HTML&CSS入门与介绍

HTML5/CSS

一. HTML5

1.1 参考手册

HTML 参考手册

1.2 字符集

字符集,指的是编码和解码采用的规则。

字符集语言备注
ASCII英语
GB2312简体中文中文系统的默认编码
GBK简繁中文
UTF-8各国语言
ISO-8859-1西欧

1.3 标签

1.3.1 常用标签
meta

含义:描述网页
属性:

  • name用于描述content的内容,如:keywords,description等
  • content设置网页关键字或描述

备注:

  • meta还可以用来设置请求重定向。<meta http-equiv="refresh" content="秒数;url=目标路径 ">
h1~h5

备注:重点在于语义,而非样式

img

属性:

  • alt搜索引擎通过该属性检索图片

备注:

  • 除自适应页面外,一般不设置图片的widthheight,而是事先处理好图片,以优化性能
iframe

含义:内联框架
备注:不推荐使用,因为iframe中的内容不会被搜索引擎检索

a

含义:超链接
属性:

  • target属性值也可以指定为内联框架的name,则在该内联框架内打开
  • href="#",则跳到顶部;href="mailto:收件人邮箱"则打开邮箱客户端
1.3.2 文本标签
标签含义样式举例
em语气上强调斜体如:警告
strong内容上强调加粗如:某重要内容
i无语义斜体
b无语义加粗
small细则内容小字号如:合同内容、版权声明
cite参考内容斜体如:书名、电影名、歌名
q内联元素。短引用引号如:名人名言。兼容性差,一般不用
blockquote块元素。长引用独占一行,缩进
sup上标小型置上
sub下标小型置下
ins插入的内容下划线
del删除的内容中划线
pre代码保留代码格式
code专门用来表示代码不保留代码格式
1.3.3 列表标签
标签含义
ul无序列表
ol有序列表
dl定义列表
dt列表的标题,dl子标签
dd列表的内容,dl子标签
li列表项,ulol子标签

上述标签均为块元素

1.3.4 长表格标签
标签含义备注
thead表头
tbody表中如果没设置tbody,则会自动在表格中添加tbody
tfoot表尾
1.3.5 块元素与内联元素
元素类型常见元素备注
块元素divph1~h5p标签不能包含块元素
内联元素spanaa标签可以包含除本身外的任何元素

1.4 实体

HTML 实体符号参考手册

1.5 语法规范

  • html不区分大小写,但一般使用小写;
  • html标签必须结构完整,成对出现或者自结束标签;
  • html标签的属性必须有值,且值必须加引号;

二. CSS

2.1选择器

选择器的优先级:

  • 内联样式>id选择器>class选择器>元素选择器>通配选择器>继承的样式
① 元素选择器

语法:标签名{}
作用:选择所有指定元素

② id选择器

语法:#id属性值{}
作用:通过id值选择唯一元素

③ 类选择器

语法:.class属性值{}
作用:通过class属性值选择一组元素
备注:

  • 一个元素如果有多个class属性值,通过类选择器指定其中一个属性值,就能选择该元素
④ 并集选择器

语法:选择器1,选择器2,选择器N{}
作用:选中多个选择器对应的元素

⑤ 交集选择器

语法:选择器1选择器2选择器N{}
作用:选中同时满足多个选择器的元素
注意:选择器之间没有空格

⑥ 通配选择器

语法:*{}
作用:选择所有元素

⑦ 后代元素选择器

语法:祖先元素 后代元素{}
作用:选择指定元素的后代元素

⑧ 子元素选择器

语法:父元素>子元素{}
作用:选择指定元素的子元素
备注:ie6及以下不支持

⑨ 伪类选择器

语法:选择器:伪类{}
作用:选择指定状态下的指定元素
备注:由于用户隐私限制,:visited只能设置字体颜色

锚伪类:

  • :link 未访问
  • :visited已访问
  • :hover鼠标悬浮
  • :active 鼠标选定

锚伪类的书写顺序:

  • visited==link–>hover–>active(箭头表示依次往下书写,双等号表示无顺序要求)
⑩ 否定伪类

语法:元素:not(选择器)
作用:从已选元素中剔除某些元素
备注

  • 语法中元素看需求,可写可不写;
⑪ 属性选择器

语法:元素[属性名="属性值"]{}
作用:选择含有指定属性的元素
备注:

  • 语法中元素="属性值"看需求,可写可不写;
  • ^表示以指定内容开头,$表示结尾,*表示包含(需是连续包含)。如:[title^="a"]{}表示title属性值为a开头的元素
⑫ 子元素的伪类

语法:

  • 元素:[firsr-child/last-child/nth-child(n)]{}
  • 元素:[first-of-type/last-of-type/nth-of-type(n)]{}

作用:

  • 第一种:在父元素的所有子元素中选择
  • 第二种:在父元素的指定子元素中选择

备注:

  • 参数n也可以写odd表示奇数;写even表示偶数
⑬ 兄弟元素选择器

语法:

  • 前一个元素+后一个元素{}
  • 前一个元素~后一个元素{}

作用:

  • +表示选择后面的一个兄弟元素(必须是紧挨)
  • ~表示选择后面的所有兄弟元素(不紧挨也算)

2.2 样式

2.2.1 单位
单位含义备注
px像素不同类型的屏幕,像素大小不同
%百分比根据父元素的样式计算
em类似百分比根据当前元素的字体大小计算,1em=1font-size
2.2.2 颜色
属性值备注
颜色名
#红绿蓝如果有两位重复,可以写成仅三位
rgb(红,绿,蓝)0-255或0%-100%
2.2.3 文本属性
属性文本设置备注
text-transform大小写capitalize每个单词首字母大写,uppercase大写,lowercase小写
text-decoration修饰线none无,underline下线,overline上线,line-through中线
letter-spacing字符间距
word-spacing单词间距
text-align对齐leftrightcenterjustify两端对齐
text-indent首行缩进单位建议用em
2.2.4 文字属性
属性文字设置属性值及备注
color字体颜色
font-style样式italic/oblique倾斜,效果相同,一般使用前者
font-variant小型大写small-caps小型大写字母
font-weight粗细bold粗体,bolder更粗,lighter更细,100-900(通常不使用,因为没有那么多字体版本)
font-size字号一般默认16px
font-family字体1.能否显示,取决于当前电脑有无该字体;2.多个字体用逗号隔开
font样式、大写、粗细、字号/行高、字体1.用空格隔开;2.字体必须写最后,大小写倒二;3.大小和字体必须写,其他的没写则为默认值(注意覆盖)
2.2.5 行高属性

① 行间距
行间距=行高(line-height)-字号(font-size)

② line-height
说明:文本默认垂直居中于行高
参数:

  • 大小
  • 百分比,表示通过字体大小计算
  • 数值,表示字体大小的倍数

技巧:对于单行文本,可以将其行高设置为与父元素的高度一致,实现垂直居中于父元素

2.2.6 背景属性

语法:

  • background-image: url(具体路径);设置背景图
  • background-repeat设置背景图重复方式
  • background-position设置背景图位置
  • background-attachment设置背景图与滚动条关系
  • scroll默认值。背景图像随滚动条滚动
  • fixed背景图固定在某一位置,不随滚动条滚动(一般fixed只设置给body)
  • background:url(具体路径) color repeat position attachment;简写,无顺序要求,若没写则表示设为默认值

说明:如果同时设置背景图和背景色,则背景色会作为图的背景显示。(通常,背景色和背景图同时指定)
图片整合:将多张图片整合成一张,并通过background-position设置偏移位置。这样只要发送一次请求,就能加载多张图片,提高访问效率。

2.2.7 表格属性
属性表格设置
border-collapse是否合并单元格边框,若合并,则会忽略 border-spacingempty-cells 属性
border-spacing设置分隔单元格边框的距离
border设置边框样式。如:order:1px solid black;

CSS设置tr:nth-child(odd){}可以实现隔行变色效果

2.2.6 opacity

含义:设置透明的
语法:opacity x;(x为0~1之间的数)
说明:ie8及以下不支持。在ie8及以下中使用filter:alpha(opacity=x)(x为0~100之间的数)

2.2.7 display和visibility

display

属性值描述
inline作为内联元素显示
block作为块元素显示
inline-block作为行内块元素显示,既能设置宽高,又不会独占一行
none隐藏元素,且不会在占页面位置

visibility

属性值描述
visible显示
hidden隐藏元素,但会继续占页面位置
2.2.8 overflow
属性值描述
visible显示溢出
hidden隐藏溢出
scroll设置横纵滚动条
auto自动设置滚动条
2.2.9 float

可选值:

  • none默认值,在文档流中排列
  • right脱离文档流,向右浮动
  • left脱离文档流,向左浮动

浮动元素不会盖住文字,文字会自动环绕元素周围

2.2.10 clear

可选值:

  • none默认,允许影响
  • right去除右侧浮动元素影响
  • left去除左侧浮动元素影响
  • both去除左右侧浮动元素影响
2.2.11 文档流
① 块元素在文档流中的特点
  • 独占一行,自上而下排列
  • 默认宽度为auto,即父元素的100%;
  • 默认高度为被子元素撑开的部分
② 内联元素在文档流中的特点
  • 只占自身大小,从左到右排列
  • 默认宽高均为被子元素撑开的部分
  • 一行中无法容纳时,自动换行
③ 脱离文档流
  • 块元素脱离文档流后,默认的宽高为被内容撑开的部分,即不再独占一行
  • 内联元素脱离文档流后,会变为块元素
④ 高度塌陷

问题描述:在文档流中,元素默认高度为被子元素撑开,但是当子元素设置为脱离文档流浮动时,将造成父元素高度塌陷。
解决方法:

  • 方法一:将父元素设置为overflow: hidden或auto;
  • 方法二:(最推荐的解决方式)
	/*clearfix为父元素class属性值其中的*/
	/*兼容绝大多数浏览器*/
	.clearfix:after{
		content: "";
		display: block;
		clear: both;
	}
	/*兼容ie6及以下的浏览器*/
	.clearfix{
		zoom:1;
	}
2.2.12 BFC

开启BFC后具有的特点:

  • 父子元素的垂直外边距不会重叠
  • 开启BFC的元素不会被浮动元素覆盖
  • 开启BFC的元素可以包含浮动子元素

开启方法:

  • 设置元素为浮动
  • 设置绝对定位
  • 设置元素为display: inline-block;
  • 设置元素为overflow: hidden或auto;

说明:ie6及以下不支持BFC

2.2.13 样式继承

后代元素可以自动继承祖先元素的某些样式,如:字号;而有些样式不会自动继承,如:背景、边框、定位相关的。

2.3 盒子模型

说明:

  • widthheight只设置内容区的宽高
  • 盒子大小=border边框+padding内边距+content内容区
① padding内边距

语法:

  • padding:上 右 下 左;
  • padding:上 左右 下;
  • padding:上下 左右;
  • padding:上下左右;

说明:

  • 颜色背景会延申到padding内边距
  • 当元素未设置width时(即为auto),则设置padding不会影响盒子的宽度,而是自动调整
② border边框
  • border-widthborder-style(必填) 、border-color
  • border
    语法: border:宽度 样式 颜色(无顺序要求)
③ margin外边距

含义:盒子与盒子之间的距离
说明:

  • 设置上左margin,将影响自身位置;设置下右margin,将影响其他盒子位置
  • 若为负值,则表示反向
  • 若只设置margin-right或只设置margin-left为auto,则为最大值,若同时设置为auto,则居中;若设置margin-top为auto,则默认为0
重叠问题

兄弟元素

问题说明:相邻的兄弟元素,在垂直方向上的外边距会发生重叠,即取最大值。
解决方法:在两元素之间插入一个其他元素,让其不相邻。

父子元素

问题说明:如果父子元素的垂直外边距重叠,则子元素的外边距会设置给父元素
解决方法:

  • 给父元素设置border,让其不相邻;
  • 给父元素设置padding,间接实现效果;
  • 给父元素设置clearfix
	/*clearfix为父元素class属性值其中的*/
	.clearfix:before{
		content: "";
		display: table;
	}
④ 内联元素的盒模型
  • 内联元素不能设置widthheight
  • 内联元素只能设置水平margin(重叠时求和),不能设置垂直的;
  • 内联元素可以设置paddingborder,但在水平方向上会影响布局,而垂直方向上不会影响布局。

2.4 定位

当开启元素定位后(position不为static),可以设置toprightbottomleftz-index,反之则不能设置

① 相对定位
  • 相对于元素原来的位置进行定位
  • 不会脱离文档流,不会影响元素性质(块元素还是块元素,内联元素还是内联元素)
  • 会使元素提升一个层级
② 绝对定位
  • 相对于离它最近的开启定位的祖先元素进行定位,如果所有祖先元素均没有开启定位,则会相对于浏览器窗口进行定位。(一般开启了子元素的绝对定位,我们会同时开启父元素的相对开启)
  • 会脱离文档流
  • 会使元素提升一个层级
③ 固定定位
  • 相对于浏览器窗口进行定位,不会随滚动条滚动
  • 会脱离文档流
④ 层级
  • 父元素的层级再高,也无法盖住子元素
  • 如果层级相同,则后写的盖住先写的

2.5 hack

  • ie10及以上不支持
  • css hack不推荐使用,难维护
2.5.1 条件hack
  • 在开发中通常利用两份外部样式表,并配合hack进行使用
<!--[if IE]>
这段文字只在IE浏览器显示
<![endif]-->

<!--[if IE 6]>
这段文字只在IE6浏览器显示
<![endif]-->

<!--[if gte IE 6]>
这段文字只在IE6以上(包括)版本IE浏览器显示
<![endif]-->

<!--[if ! IE 8]>
这段文字在非IE8浏览器显示
<![endif]-->

<!--[if !IE]>
这段文字只在非IE浏览器显示
<![endif]-->
2.5.2 属性hack
符号浏览器备注
_ie6及以下写在样式名最前
*ie7及以下写在样式名最前
\9ie6及以上写在样式值最后
\0ie8及以下写在样式值最后
  • 61
    点赞
  • 171
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
JavaScript:定义行为和动作 (基于对象和事件驱动的客户端脚本语言;也是一种广泛应用于客户端Web开发的脚本语言) 基于对象:网页中的一切元素都是假象!不需要new,即可直接使用 事件驱动:JavaScript的执行都是由事件引发 解释执行:先读到的先执行,后读到的会替代先读的 可以使用任何文本编辑工具编写 JavaScript 代码,然后由浏览器解释执行。 JavaScript常用于实现如下功能: |--控制文档的外观和内容; |--对浏览器的控制; |--与 HTML 表单的交互; |--与用户的交互; |--执行计算等。 1.单击事件:定义在按钮的开始标签中 语法:onclick="js语句" 弹出警告:alert(‘字符串’) 强调:1.js区分大小写 2.字符串单双引号不区分 [removed]标签:页面中专门集中编写JavaScript的区域 js的方法定义:function方法名([参数列表]){ 方法体 [return 返回值] } 注意:js中的方法可以直接写在代码中,不需要“类”包裹 使用方法:方法名()-->方法调用-->立即执行 2.js文件:网页外专门保存js脚本的文件--推荐 强调:HTML、CSS、JS都要使用UTF-8编码保存(window系统) 使用js文件引入网页:[removed][removed] 强调:一旦定义src属性则其中的代码失效 解释执行:语句也可以直接写在js文件中,边解释边执行 3.***调试*** |--①.只有在执行时,才会报错 |--②.错误信息,浏览器页面看不到--没效果 | 解决:控制台--(工具-->JavaScript控制台或F12) | 包含错误信息;指向错误位置的超链接 |--③.打桩:在指定变量位置输出变量或对象的内容 console.log(内容);-->出现在控制台-->日志 4.变量:js中的变量不需要提前指定类型,由赋值时动态决定 所有的变量都用var声明 5.数据类型: |--String(字符串类型) |--Number(数字类型) |--Boolean(布尔类型)0、-0、null、""、false/undefined或NaN,则该对象设置为false。其余都可以当true 6.数据类型的隐式转换: |--数字 + 字符串:数字转换为字符串 |--数字 + 布尔值:true转换为1,false转换为0 |--字符串 + 布尔值:布尔值转换为字符串true或false |--布尔值 + 布尔值:布尔值转换为数值1或0 7.数据类型转换函数 :(方法前不需要对象调用的:全局函数) |--toString():转换成字符串。所有数据类型均可转换为 string 类型; |--parseInt():强制转换成整数。如果不能转换,则返回 NaN(not a number); |--parseFloat():强制转换成浮点数。如果不能转换,则返回 NaN(Not a Number) |--typeof():查询数值当前类型。 |--isNaN():判断是否为数字。返回 true:不是数字/false:是数字 | |--isNan(""):对空字符串不验证,直接返回false | |--如果输入的是字符串类型的数字,返回false--不能判断数据类型,只判断内容 | |--如果输入的是boolean,返回false。因为boolean可以和number类型直接做计算 | |--和任何数字计算都得NaN;和任何数字作比较都得false |--注:[removed]();节点输出,即在当前位置输出括号里的内容 *凡是从页面上进入js的都是字符串类型 8.查找元素:抓住根节点,就等于抓住整棵树 网页的根节点:document对象 要找元素,必须利用document对象(当前网页文件) 精确查找某个ID的元素:document.getElementById(id名); 9.null和undefined: |--null:一个特殊的值,表示“无值”--空对象。数据类型为Object |--undefined:表示声明了变量但从未赋值或者对象属性不存在 10.双等号(==)和全等号(===): |--“==”为确定两个运算数是否相等,“==”运算符会进行类型转换。转换后运算数相等就返回true,否则返回false |--“===”不执行类型转换,即,只有在无需类型转换运算数就相等的情况下,才返回true,否则返回false |--附:if(null)、if(defined)、if(NaN)都相当于if(false) -----猜数字游戏----- 失去焦点时,判断猜对猜错 获得焦点:onfocus 失去焦点:onblur 当事件就发生在获得内容的当前元素上: this直接获得当前内容对象。可以代替当前对象完成一切操作,拥有当前对象的所有属性 前端优化:js中最好用三目运算代替if else 11.String: |--查找:x.indexOf(‘关键字’[,开始位置下标]) | 每次只查找第一次出现的位置 |--替换:x.replace(‘关键字’[,‘替换内容’])--不会修改原x字符串 | 每次只替换第一次找到的 |--查找和替换所有:while循环 | |--String 对象的常用方法有: |--x.toLowerCase()、x.toUpperCase():大小写转换方法; |--x.charAt(index):返回指定位置的字符; |--x.charCodeAt(index):返回指定位置字符的Unicode编码; |--x.indexOf(findstr,index)、x.lastIndexOf(findstr,index): 获取指定字符; |--x.substring(start, end): 获取子字符串; |--x.replace(findstr,tostr):替换子字符串; |--x.split(bystr): 拆分子字符串。 |--String与正则表达式 |--str.match(regExp);--查找str中匹配正则表达式的关键字 | 返回:如果没找到,返回null。若找到,返回1个数组,数组的每个元素是每个找到的匹配关键 | |--str.replace(regExp,"替换值")--替换str中所有匹配的关键字 | 强调:replace方法不改变元字符串,只能返回新字符串。必须用变量接收新字符串 | |--js中正则表达式语法:/正则表达式/[属性后缀]--其中属性后缀,g:全局匹配 i:忽略大小写(仅英文有效) 如果不适用模式匹配方式,将执行原文匹配 结果:如果正则表达式写错,也将执行原文匹配 12.Array笔试题:js中数组声明方式: A new Array(7) B new Array(7,‘a’,true) C [7,'a',true]--js中所有[]都表示数组 D []--实例化一个空数组对象 实例化空数组:var arr=[]; 特点:元素个数不限定,元素类型不限制 13.Array 对象的常用方法: |--1.join()方法--用于把数组中的所有元素放入一个字符串   | eparato表示要使用的分隔符。如果省略该参数,则使用逗号作为分隔符 |--2.toString()方法--可把数组转换为字符串,并返回结果 |--3.concat()方法--用于连接两个或多个数组,该方法不会改变现有的数组 |--4.slice()方法--截取元素。根据给定的范围可从已有的数组中返回选定的元素 14.Function:js中一切都是对象,连方法都是1个对象!! 笔试题:js中方法定义集中方式: A:function compare(a,b){return a-b;}---*可以任意地方声明方法* B:var compare=function(a,b){return a-b;} ---| --其实方法名也是方法对象的变量名;等号右边其实就是1个匿名方法对象 |--*必须在传递之前声明方法对象* C:var compare=new Function('a','b','return a-b') ---| --其实js底层就是new Function;构造函数中的参数都是字符串 结论:所有的方法都是function类型的。 15.JavaScript中的所有事物都是对象,分为三类: |--简单对象:String、Number、Boolean |--组合对象:Array、Math、Date |--复杂对象:Function、Regex、Object等 16.Array排序: |--升序:function compare(a,b){return a-b;} |--降序:function compare(a,b){return b-a;} 比较器用法:arr.sort(比较器方法名); 遍历:for(var i=0;i<arr.length;i++)--等同Java Array倒转:arr.reverse();用于颠倒数组中元素的顺序 17.Array元素操作: |--arr.push(x);向数组增加1个新元素x(位于数组最后位置) |--arr.splice(开始位置,删除几个[,x1,x2,x3...]) |--arr.indexOf(x) 返回x在数组中的下标---经常用于判断元素是否存在。如返回-1,x则不在数组中 18.Number对象: |--x.toFixed(num):可把Number四舍五入为指定小数位数(num:0-20)的数字 |--x.toString():用于把一个 Number 对象转换为一个字符串,并返回结果 19.正则表达式对象:(专门用于查找和验证) reg.test(‘要验证的完整字符串’)匹配返回true,否则返回false 强调:如果正则表达式使用了^和$,必须完整匹配才行。反之则部分匹配 20.Date对象:(计算方法:先get,再计算,最后set回去) |--1.每个分量上都有一对get/set方法 |--2.命名:get|set年月日,单数;get|set时分秒,复数(s) |--3.除了日期从1开始到31结束外,其余都从0开始到-1结束 |--Date对象的常用方法 |--1.获取日期数据 getDate()、getDay()、getFullYear()等 |--2.修改日期数据 setDate()、setDay()、setFullYear()等 |--3.获取日期格式的字符串 toString()、toLocaleTimeString()、toLocaleDateString()等 21.argument参数:所有方法都隐藏的一个数组对象 作用:不设置任何的形参的情况下,自动接收所有传入参数 arguments.length:获得参数个数 arguments[i]:获得每个参数--都要判断和类型转换 22.全局函数:不用任何对象点(.)就可以调用--可用于所有的 JavaScript 对象 常用的全局函数有:parseInt/parseFloat、isNaN、eval、decodeURI/encodeURI等。 encodeURI和decodeURI: |--encodeURI:可把字符串作为 URI 进行编码 |--decodeURI:decodeURI()函数可对encodeURI()函数编码过的 URI 进行解码 eval() 函数可计算某个字符串,并执行其中的的JavaScript代码 23.BOM:操作浏览器窗口的对象模型。 --即浏览器对象模型 ,用来访问和操纵浏览器窗口,使 JavaScript 有能力与浏览器“对话” DOM:操作网页中元素对象的对象模型--即文档对象模型,用来操作文档 window对象的常用属性: |--document:窗口中显示的 HTML 文档对象 |--history:本次浏览过窗口的历史记录 | --前进:history.go(1);后退:history.go(-1);刷新:history.go(0); |--location:窗口文件地址对象(地址栏) |--event:事件对象 |--screen:屏幕对象 |--name:窗口名称 |--opener:打开当前窗口的 window 对象 |--navigator:有关浏览器的信息 |--cookieEnable:判断当前浏览器是否启用cookie |--userAgent:获得浏览器的名称和版本号 window 对象的常用方法有: |--alert();--警告框--只能点确认 |--confirm();确认框--可以选择确认或取消 |--prompt();对话框--用于显示可提示用户进行输入 |--window.open('url'[,'name']):打开1个选项卡 |--window.close():关闭当前选项卡 24.定时器:凡是网页中自动动态的效果都是用计时器实现的 |--周期性定时器:每隔一个时间段自动执行一次,循环执行 | |--setInterval() 启动-->用于启动一个周期性定时器 | 语法:timer=setInterval(方法名,间隔毫秒数) |--clearInterval() 停止-->用于停止一个周期性定时器 语法:timer=clearInterval(timer) |--1次性定时器:先等待一段时间,再自动执行一次,自动结束 |--setTimeout() 启动-->用于启动一个一次性定时器 |--clearTimeout() 停止-->用于停止一个一次性定时器 附: |--表单控件,读写内容:.value |--普通html元素,要想读写开始标签和结束标签之间的内容:[removed] 计时器:1.做什么事:方法; 2.一个变量:存计时器的线程号 3.何时启动计时器:事件 25.document:1.代表当前网页文档; 2.所有网页元素的根元素; 3.查找和操作元素,都要依靠document; 节点:nodeName--标签名或属性名 DOM操作样式:对象.className属性 等效于<标签class=""> DOM树:当前节点向上:txtObj[removed]() 向下:txtObj.getElementByTagName() 26.表单中查找控件对象:document.getElementsByName('name属性') DOM增加新节点:两种方法 创建新节点:document.creatElement('标签名') --此时新元素对象仅在内存中游离,页面看不见! 添加新节点:找到父元素! |--appendChild() 方法只能将新节点作为某节点的最后一个子节点 | --此时新元素追加到了父元素的末尾 |--parentNode.insertBefore()(新元素对象,A)--其中A为新元素要插入位置的后一位元素 DOM删除元素:node.removeChild(childNode)--node为父节点,childNode为要删除的节点 27.HTML DOM Select和Option对象: select对象:代表HTML表单中的一个下拉列表,每个<select> 标签即表示一个 Select 对象 |--属性: |--options:返回包含<select>元素中所有<option>的一个数组,每个元素对应一个<option>标签,索引从0开始 |--selectedIndex:设置或返回下拉列表中被选选项的索引号 |--size:设置或返回下拉列表中一次显示显示的选项数 |--方法: |--add(option):用于向<select>添加一个<option>元素。 |--remove(index):从下拉列表删除选项 Select对象有事件onChange当改变选择时调用的事件句柄。Select对象的onChange属性引用了一个事件句柄函数。当用户选 中一个选项,或者取消了对一个选项的选定时,就会调用该句柄。这个事件不会指定新的选项是什么,必须通过Select对象的 selectedIndex属性,或者各个Option对象的selected属性来确定这一点。 option对象:代表HTML表单中下拉列表中的一个选项,每个<option>标签表示一个Option对象 |--创建:var o = new Option(text,value); |--属性: |--index:返回下拉列表中选项的索引位置 |--text:设置或返回选项的文本值; |--value:设置或返回选项的值; |--selected:设置或返回选项的 selected 属性的值,该属性设置选项的当前状态,如果为 true,则该选项被选中 28.table对象: rows数组:表中所有行对象 方法:var row=table.iusertRow(i);--返回刚添加的新行 table.deleteRow(i); --i:行的下标。如果i取-1,即在表格末尾追加一行 tableRow对象: cells数组:当前行中所有单元格的对象 方法:var 刚添加的新单元格=tr.iusertCell(i); tr.deleteCell(i); tableCell对象:取单元格内容--td[removed] 29.事件冒泡: |--1.由外向内,捕获事件:记录哪级元素有什么事件 |--2.由内向外,冒泡执行:按记录的顺序由内向外执行 取消冒泡: |--1.获得事件对象!--event onclick="func(event)"--其中event和this都是关键字,表示事件对象 func(e)--此时e就是事件对象 |--2.取消冒泡:e.cancelBubble=true; 何时用:如果大量子元素拥有相同事件,应将相同事件统一定义在1个父元素上1次即可

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值