浅谈HTML.CSS与JS

一 HEML简要分析

1.HTML介绍

HTML:超文本标记语言,主要作用是用来编写网站页面。

超文本:文本是含有完整含义的文字组成的段落或者文件,超文本是在表达形式上超出文字范围:

超链接,含有跳转的对象,图片,声音,视频

标记:指的的HTML的代码风格,HTML依赖标签进行内容的表述:

标签:分为单标签和双标签

单标签

<标签名称 属性=”值”>

双标签

<标签名称 属性=”值”></标签名称>

HTML基本结构:

创建一个txt文件

在index.txt当中输入下面的代码

<html>

         <head>

                   <title>

             首页

                   </title>

         </head>

         <body>

                 <h1> hello world </h1>

         </body>

</html>

修改index.txt的后缀为.html

双击,在浏览器里看到了hello world的界面

1、 html标签是HTML文件的最大一个标签,也被称为根标签

2、 html的标签通过嵌套来声明层级

3、 在html标签内部把整个html分为了头部(head标签)和内容部分(body部分)

4、头部负责声明页面的属性,title就是页面的标题

5、 内容部分负责页面上的内容

编写的规范:

1、 html标签大小写不区分,约定俗成使用小写

2、 写标签的时候,先写完整再填充内容

2.常用的HTML标签

1)h标签

标题标签,一共是h1-h6六个等级,再html当中代表标题。

2)文本常用标签

p标签,文本标签,通常用来存放文字,一个p占一行,html当中大段的文字通常是用p标签表示的。

<br> 换行标签(单标签)

<hr>独立一行的一条线

&nbsp; HTML空格的代表符号,一次代表一共空格,文本当中敲多少个连续的空格,都代表一个空格。

&lt; >, &gt; <

3)文本修饰标签

i 倾斜具有语句含有,表示强调。

em 倾斜只是倾斜

b 加粗只是加粗,没有特殊函数,只是文本样式

strong 加粗,这个加粗带有强烈的强调涵义。

u 下划线下划线

del 删除线

案例:

<h1>有一些镜头温暖洋溢h1><hr>10月16日,皮海云在江西新干黎山林场连坑分场向记者介绍林地情况。<br>今年<strong>49岁strong>的皮海云是江西省吉安市新干县黎山林场的护林员,<u>1989年u>起开始从事护林、育林工作。他在林区巡视平均每天要走<strong>20多公里strong>,30年的时间里累计行走<strong>20余万公里strong>,黎山林场处处留下他的足迹。<br>30年来,皮海云看护的林区从未发生过大面积森林病虫害,以及重大侵占林地等案件。皮海云多次被林场评为劳动模范、优秀共产党员,<i>还于2018年荣获新干县“十佳最美职工”称号i>。

4)盒子标签

Html布局历史:

在最初html流行表格布局类似于现在的简历模板,将整个页面看成一共表格,然后进行表格的合并,最后形成网页布局。

后来随着网络的发展,表达的形式越来越复杂,表格布局有写苍白,就有了新的布局方式,盒子布局,将整个页面看作一共盒子,在里面嵌套小盒子,通过描述盒子的位置,边框,边距进行布局。

div 就是盒子模型一个元素,频繁使用在网页布局中

span 文本标签,和p标签相比,span不换行

不写标签,文字也不换行,但是当我们的一行文字有多种样式:

Hello

这个时候就需要用到span对文字做划分

5)图片(image)标签(单标签)

Image 图片,镜像,html当中的图片标签采用的是image的缩写img

和上面的标签相比,我们在图片标签就要接触到标签的属性了。

<img>

src 图片地址

可以使用绝对路径

Windows下以盘符开头 D:\\

Linux下以根开头/usr/root/

也可以使用相对路径

指的是以当前文件为参照,其他文件的位置

./当前路径默认可以不写

../代表上一层

/ 项目的根目录

当前代码中的路径指的是当前文件目录下的img下的bk.jpg图片

alt 图片加载失败的提示文字

title 图片的提示文字

height 图片高度

weight 图片宽度

1、 单独设置图片的高度或者宽度,html会自动的对图片进行等比例缩放,图片不会发生变形

2、高度和宽度的设置单位通常是像素(px),但是也可以用百分比,但是需要借助样式

6)超链接标签

我们单纯文本表述,就不需要有过多的属性,比如:span,h,p,br,hr

如果是超文本就需要属性:图片需要地址,标题,错误提示,高宽

在HTML当中a标签是超链接标签,a标签是一共双标签

<a></a>

超链接也是超文本,所以a标签也是需要参数:

href:超链接的地址,链接到哪里(超链接不只可以使用文本作为内容,也可以是其他类型)

target: 代表打开链接的方式

https://www.baidu.com/

Target参数默认a标签打开网页是在当前页面打开当target=”_blank”就会先打开一个空白页,在空白页上打开链接

href在网页开发当中,还可以进行锚点操作

1、在需要跳转到的标签上设置id属性,id是标签的标识属性,在一个页面当中,id值不可以重复

2、 给a标签的href属性使用#id名称的形成进行指出

3、]这样就达成了效果

7)列表标签

有序列表

<ol type="a" start="2">   <li></li>   </ol>

有序列表,之所以被称为有序列表,因为前面的标识是有顺序的序列,默认使用数字,也可以通过type属性进行跳转

Type:

a  代表小写字母

i  代表小写罗马数字

A  代表大写字母

I  代表大写的罗马数字

1  代表数字默认

有序列表的前面的符号只有以上几种,不可以自定义,但是可以自定义前面标识的开始字符,需要用到start属性

无序列表

<ul>   <li></li>   </ul>

无序列表也有type属性,

disc 实心圆点

circle 空心圆点

square 实现方块

自定义列表

<dl>

        <dt></dt>

</dl>

1、 自定义列表没有前面的字符

2、自定义列表可以按照需求进行缩进

3、通常会用作导航栏

4、有序或者无序列表是可以嵌套的

8)表格标签

table这里学习表格正是上午讲述的表格。

tr 行

td 列

在html当中,我们通常说一行几列,就代表着行里面包含着列

1、table标签,本身有caption标签,作为表格的标题,标题居中显示

2、 table有一系列的属性

    1、 cellspacing 单元格和单元格之间的距离

    2、 cellpadding 单元格和内容的距离

    3、 width 表格的宽度

    4、 height 表格的高度,由于数据条数不固定,所以通常不设置高度

html标签属性之间用空格分开

3、 tr和td也有参数

    align 水平对齐 left center right 左中右

    valign 垂直对齐top middle bottom 上中下如果表格没有设置高度,展示不明显

4、 th是一种特殊的td,通常用来写字段名称,相比较一般的td,th对文字自动执行居中加粗

5、表格合并

colspan 跨列合并(水平合并)设置当前单元格占用几列高度

rowsapn 跨行合并(垂直合并)设置当前单元格占用几行宽度

9)表单标签

之前的内容都是为了在html上向用户展示数据,但是没有获取用户数据的地方,问题是web开发要实现用户和网站的交互。表单技术就是获取用户反馈的一个重要手段。

比如问卷就是由表单完成的。

表单和表格有类似,首先需要有表单标签。

<form></form>

Form有很多参数,但是这些参数大部分是描述表单数据提交的,在后端开发的时候会用,前端不长用

action: 就是数据提交的地址。

method: 提交的方式,参数是http请求方式,通常用到的有get和post两种。

enctype: 提交数据的格式。

然后需要有表单当中的元素标签。

Input元素 默认是一个文本框,但是可以通过type属性进行设置

type参数描述

默认就是,Text文本框,是

<input type="text" placeholder="请输入您要的信息">

Password密码框,输入内容以*代替,不可见

<input type="password">

Radio单选框,依赖name确定一组单选框

男:<input type="radio" name="gender" checked>女:<input type="radio" name="gender">

Checkbox复选框,依赖name确定一组,在后端开发可以看到效果

python:<input type="checkbox" name="gender">

php:<input type="checkbox" name="gender">

java:<input type="checkbox" name="gender">

c:<input type="checkbox" name="gender">

c++:<input type="checkbox" name="gender">

File文件框,用来上传文件

<input type="file">

hidden隐藏域,不显示,但是可以提交,后端校验使用居多

<input type="hidden>

submit提交按钮,自动提交表单里的数据,没有后台没有效果,需要value参数来定义按钮上的内容

button只是个按钮

<input type="submit" value="提交按钮>

<input type="button" value="正常按钮">

<input type="reset" value="重置按钮">

reset重置按钮 清空当前表单的所有输入

  Input可以构造按钮,但是也可以用button标签来定制按钮

这个button按钮的内容可以更丰富,input的value只能是字符串,但是button的内容可以很丰富

<button type="button">常规按钮button>

<button type="submit">提交按钮button>

<button type="reset">重置按钮button>

<button type="button"> <img src="img/bike.jpg" width="100px">   button>

select标签,下拉框,需要结合option使用你

<select>

<option>河北option>                            <

option>山东option>

<option selected>河南option>

<option>陕西option>

<option>山西option>

select>

Textarea 双标签多行文本框,用于大段的文字

<textarea>                        textarea>

 表单控件常用的属性:

Placeholder,再文本框当中展示提示字符

checked 代表选项选中

selected下拉框默认选中项

readonly 只读

通常用于修改信息部分

disabled 禁用,通常使用再按钮,不满足条件,不可以提交

单标签Doctype meta br hr img input

双标签Html head body title h p span b I em strong u del a table canption tr td th ul li ol dd dt dl form button select textarea div span

二、CSS的常用属性

1.CSS颜色

在css当中,颜色有三种表达方式:

计算机的颜色是按照工业三原色进行配色的,工业三原色:

R red 红色   G green 绿色   B blue 蓝色

理论上通过这三种颜色的混搭,通过不同比例可以形成所有的颜色

1、单词

常用的颜色单词

Red(红)white(白)  black(黑) green(绿)  blue(蓝色)

Yellow(黄) purple(紫色)  gray(灰)

实际上用单词描述我们所有想要的颜色是不现实的。

2、 十六进制数

16进制数:0-F

使用6位16进制数表达颜色,没两位代表一种颜色

#     FF  FF  FF

标识位  红 绿 蓝

16进制的颜色准确度高,通常需要借助取色工具进行取色。比如ps

3,十进制数

在css当中,也可以用10进制数来表达颜色,还是三原色:

每个颜色是0-255比如:

(255,255,255)白色

2. 文字的样式

文字比其他元素的样式还是有不同的,在之前的举例过程当中,我们使用了文字的颜色:color

文字常用的样式:

大小

Font-size 使用px

粗细

Font-weight

    Normal 正常粗细

    Bold 粗

    Bolder 更粗

    lighter 更细

    自定义粗细,是指具体的数值 100-900

字体

Font-family 可以采用系统拥有的字体

文字样式

Font-style

文字倾斜,三个参数,只有italic是倾斜

首行缩进

Text-indent px

水平位置

Text-align

Left  center  right

垂直位置

Line-height

3.CSS背景

Background

背景其实可以细分

Background-color 背景颜色

Background-image 背景的图片

Background-position 背景图片定位

    Left 左

    Center 中

    Right 右

    Top 上

    Botoom 下

Background-repeat 背景重复

    No-repeat 不重复

    Repeat-x 水平重复

    Repeat-y 垂直重复

Background-size 背景图片的大小

4,边框(border)

边框分为4个方向

Left 左

Right 右

Top上

Bottom下

直接写border代表4个方向。

三种参数

颜色,颜色的设置和CSS当中其他的颜色设置一样,单词,十六进制数,十进制数

线条类型solid实线  dotted点状线   dashed虚线

线条粗细,像素px

border-radius 圆角

5,边距

Html的边距分为两种

内边距:当前标签距离内部嵌套标签的距离。Padding

外边距:当前标签距离自己父标签的距离。margin

边距和边框一样也是分为4个方向的。

CSS将标签按照布局的特性分为三种

块级元素

    1、 支持CSS全部的样式

    2、 [如果不设置宽度,默认宽度占满全屏

    3、 一个元素单独占据一行

行内元素

    1、 不支持CSS的部分样式

    2、 宽和高由内容决定

    3、多个元素在一行

    4、 代码换行的时候,盒子有间距

行内块元素

    1、支持CSS全部的样式

    2、如果没有设置宽高,宽高由内容决定

    3、多个元素在一行

    4、代码换行的时候,盒子有间距

6,CSS位置处理

文档流

常规情况下,html标签在页面上按照从上到下(块级元素)从左到右(行内元素)的顺序进行排列,这样的顺序我们叫做文档流。

CSS基于HTML的布局,其实还涉及到一个层次的问题。

浮动

就是将指定的标签浮动到指定的位置上,浮动之后,不在和之前的元素保持同一层。

Float:left 左right右

[if !supportLists]1、 [endif]浮动是将元素进行位置的移动

[if !supportLists]2、 [endif]浮动会导致元素脱离当前层

[if !supportLists]3、 [endif]浮动之后,父元素没有子元素撑开,布局容易出现问题

需要清除浮动:

1、 给父元素设置一个高度

2、 使用clean:both

浮动是为了左右布局标签,浮动之后,为了排版的稳定,需要清除浮动

定位

浮动可以解决左右布局问题,但是在页面布局过程当中,会遇到特定位置,这个时候需要用定位。之前的课程当中,

Position定位有四个参数

Absolute 绝对定位,参照物是整个页面

Relative 相对定位,参照物是父元素

Fixed 固定定位,参照物是浏览器窗口

Static 静态

三,JavaScript基础语法

JavaScript是一门运行在浏览器端的面向对象的高级的脚本语言

1 js的三种形式

.行内式: 写在标签上

 <p onlick=”alert(‘hello world’)”>如触发按钮</p>

.嵌入式:使用script标签写到html中

如<script> alert(‘hello world’)  </script>

.独立文件式:在script标签上链接外部jis文件,如果外联,则script内部的文件就失效了,不能共同使用

如  <script src=”index.js”>   alert(“hello”) #失效  </script>

2 js语法格式

分割符:以 ; 分割

3 js的输出

. alert弹出提示框,展示内容,展示最为直接

 console.log在浏览器调试部分展示 展示最为详细

 document.write写在页面上,可以写html样式

4.数据类型

字符串类型string

数字类型number 直接包括  int整数和float小数

布尔值boolean  true false

对象object 时间对象和数组对象

null 空类型

 * js查看数据使用typeof

* js使用 var 声明变量

数据类型转换

转换为字符串string(要转换内容)

转换为整数parseint(要转换内容)

转换为小数parsefloat(要转换内容)

转换为布尔类型boolean(要转换内容)#空字符为false

# js中数字和字符串拼接,不会报错,形成一个新的字符串

5 js运算

数学运算+,- , * , /

赋值运算=

自增运算+=, -=  ++a先赋值在自增 a++ 先自增再赋值

比较运算< , > , <=, >= , != , == , ===(全等于 值等于 且类型等于) !==不全等于

逻辑运算&&(相当于and) || (相当于or) ! (相当于not) 优先级|| > && > !

三目运算判断?第一个:第二个如果判断成立执行第一个否则执行第二个

如2>3? alert(“第一个数字大”):alert(“第二个数字大”)

var number = 4 >3 ?3:2

6 流程控制

    1.   if(条件){满足条件要执行的代码}

    多条件判断时使用的为else if

var a =10

if(a>15) {

console.log(“<15”)}

else if (a <5){

console.log(“<5”)}

else{

console.log(“>15”)}

#不能论由于多少分支只要第一个执行成功 不会再继续向下判断

    2.switch语句

switch(条件){

case结果一

第一个结果执行的代码

break

case结果一

第一个结果执行的代码

break

}

var a=2

switch(a){

case 0:

console.log(“0”)

break;

case 1:

console.log(“1”)

break;

case2:

console.log(“2”)

break;

case 3:

console.log(“3”)

break;

}

# break结束判断 如不结束则继续向下执行 输出  2  3

for in循环

for( 变量 in 一串数据){

要执行的代码

}

for( var i  in “adsafsa”){

   console.log(i)#此时的i为一串元素的索引而非元素

console.log(“adsafsa”[i]) #按索引输出数据 }

for循环

for(变量 条件 自增){

执行的代码

}

for(var i =1 ;  i < 10 ;  i++){

console.log(“i”)

}

#如条件为i<1 则条件从开始就不成立 则为死循环

while循环

while(条件){

满足条件执行的代码

}

    var a=1

while(a<10){

console.log(a)

a++

}

while死循环

  var a = 1

while(1){

  console.log(a)

a++

}

break退出循环

continue跳出当次循环

js函数

(1)标准版

function名称(){

函数中的代码

}

名称()  #调用

参数版

function名称(参数1,参数2){

函数中的代码# arguments# js内置变量存放所有参数

}

名称()  #调用

默认值参数

function名称( 参数1 ,参数2= 默认值){

函数中的代码

}

名称()  #调用  #参数按顺序传递 如不给参数2传递数据使用默认值

判断版

function text(num1, num2){

  num2=num2(arguments[1])? num2:10 }

返回值

function名称(){

函数中的代码

return返回值

}

名称()  #调用

return将函数内的值返回出来作为执行的结果

匿名函数

  var a =function (){

函数中的代码

}

a()  #调用

2.JS对HTML的操作

在js基础部分,除了document.write方法,其他的js和html没有关系。:

当某个对象满足某个条件触发某个功能,功能通常是函数,函数进行了某种修改。

1、如何在js当中获取html标签

2、如何使用js修改html

3、如何在js当中表述网页事件:键盘按下,鼠标单机,鼠标滑过,摄像头打开

1)DOM(Document)对象

Document是html整个页面的文本内容的对象

Document当中的每一个元素都可以认为是一个element对象,在js当中需要对element对象进行操作。

首先要掌握的是dom对象的获取,Document给开发者提供了具体的获取对象的方法

document.getElementById 通过id获取单个标签的对象

document.getElementsByClassName 通过类名获取所有该class对象

document.getElementsByTagName 获取当前页面多有的指定标签

document.getElementsByName 获取当前页面所有指定name值的标签

其次要掌握对dom对象的修改

样式

document.style

可以通过style修改样式

style后面可以加当前标签可以用的所有的css属性

注意,只有document.getElementById 获取的是单个对象,可以直接使用style,其他三种选择方法获得的是对象的列表,需要通过索引或者循环之后加style

在当前代码的步骤:

1、获取元素

到底获取的是元素,还是包含元素的数组

2、 设置元素的样式

设置元素的样式,比如不要给span设置宽度

属性修改

在标签内以键等于值存在的,都是属性

hasAttribute 判断指定元素是否有指定属性

hasAttributes判断指定元素是否有属性

setAttribute 设置属性,属性名,值

getAttribute

removeAttribute

在js当中获取html标签,操作html标签的样式和属性

获取和修改html内容

innerHTML 插入内容,可以插入html

innerText 插入文本

获取和添加元素

createElement 创建对象,类型自己设置

createTextNode 创建文本节点,就是文本内容

cloneNode

注意,克隆之后,修改克隆对象的id或者克隆没有id的对象

reovmeChild

     appendchild 在指定标签的子元素尾部添加元素

2)JS的事件

当点击发生之后,执行的函数。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,026评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,655评论 1 296
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,726评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,204评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,558评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,731评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,944评论 2 314
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,698评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,438评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,633评论 2 247
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,125评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,444评论 3 255
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,137评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,103评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,888评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,772评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,669评论 2 271

推荐阅读更多精彩内容

  • 概要 64学时 3.5学分 章节安排 电子商务网站概况 HTML5+CSS3 JavaScript Node 电子...
    阿啊阿吖丁阅读 8,629评论 0 3
  • 概述 在网易云课堂学习李南江老师的《从零玩转HTML5前端+跨平台开发》时,所整理的笔记。笔记内容为根据个人需求所...
    墨荀阅读 2,289评论 0 7
  • 33、JS中的本地存储 把一些信息存储在当前浏览器指定域下的某一个地方(存储到物理硬盘中)1、不能跨浏览器传输:在...
    萌妹撒阅读 2,014评论 0 2
  • 一、理论基础知识部分 1.1、讲讲输入完网址按下回车,到看到网页这个过程中发生了什么 a. 域名解析 b. 发起T...
    我家媳妇蠢蠢哒阅读 3,088评论 2 106
  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 2,548评论 0 7