H5和CSS3常用新特性

H5新特性
说明
HTML5 的新增特性主要是针对于以前的不足,增加了一些新的标签、新的表单和新的表单属性等。
这些新特性都有兼容性问题,基本是 IE9+ 以上版本的浏览器才支持,如果不考虑兼容性问题,可以大量使用这
些新特性。
1. 新特性增加了很多,但是我们专注于开发常用的新特性。
2. 基础班我们讲解部分新特性,到了就业班还会继续讲解其他新特性。
1、新增的语义化标签
1.以前布局,我们基本用 div 来做。div 对于搜索引擎来说,是没有语义的
<header>:头部标签
<nav>:导航标签
<article>:内容标签
<section>:定义文档某个区域
<aside>:侧边栏标签
<footer>:尾部标签
注意:
1.这种语义化标准主要是针对搜索引擎的  2.这些新标签页面中可以使用多次
3.在 IE9 中,需要把这些元素转换为块级元素
5.移动端更常使用这些标签
1.2、HTML5 新增的多媒体标签
1. 音频:<audio>
2. 视频:<video>
使用它们可以很方便的在页面中嵌入音频和视频,而不再去使用 flash 和其他浏览器插件。
HTML5 在不使用插件的情况下,也可以原生的支持视频格式文件的播放,当然,支持的格式是有限的。
1.音频标签和视频标签使用方式基本一致
2.浏览器支持情况不同
3.谷歌浏览器把音频和视频自动播放禁止了
4.我们可以给视频标签添加 muted 属性来静音播放视频,5.音频不可以(可以通过JavaScript解决)
6.视频标签是重点,我们经常设置自动播放,不使用 controls 控件,循环和设置大小属性
1.3HTML5 新增的 input 类型
属性值
type="email"限制用户输入必须为Email类型
type="url"限制用户输入必须为URL类型
type="date"限制用户输入必须为日期类型
type="time”限制用户输入必须为时间类型
type="month"限制用户输入必须为月类型
type="week"限制用户输入必须为周类型
type="number"限制用户输入必须为数字类型
type-"tel"手机号码
type="search"搜索框
type="color"生成-个颜色选择表单
1.4 HTML5 新增的表单属性
属性
1、required表单拥有该属性表示其内容不能为空,必填
2、placeholder表单的提示信息,存在默认值将不显示
3、autofocus自动聚焦属性,页面加载完成自动聚焦到指定表单
4、autocomplete当用户在字段开始键入时,浏览器基于之前键入过的值,应该显示出在字段中填写的选项。默认已经打开,如autocomplete="on",关闭autocomplete ="off"
5、multiple需要放在表单内,同时加上name属性,同时成功提交
可以多选文件提交
2. CSS3 的新特性
2.1 CSS3 的现状
1.新增的CSS3特性有兼容性问题,ie9+才支持
2.移动端支持优于 PC 端
3.不断改进中
4.应用相对广泛
5.现阶段主要学习:新增选择器和盒子模型以及其他特性
2.2 CSS3 新增选择器
CSS3 给我们新增了选择器,可以更加便捷,更加自由的选择目标元素。
1. 属性选择器
2. 结构伪类选择器
3. 伪元素选择器
2.2 属性选择器
属性选择器可以根据元素特定属性的来选择元素。 这样就可以不用借助于类或者id选择器。
选择符
E[att]选择具有att属性的E元素
E[att="val"]选择具有att属性且属性值等于val的E元素
E[att^="al"]匹配具有att属性且值以val开头的E元素
E[att$="val"]匹配具有att属性且值以val结尾的E元素
E[att*="val"]匹配具有att属性且值中含有val的E元素
2.3 结构伪类选择器
结构伪类选择器主要根据文档结构来选择器元素, 常用于根据父级选择器里面的子元素
选择符
E:first-child匹配父元素中的第一个子元素E
E:last-child匹配父元素中最后一个E元素
E:nth-child(n)匹配父元素中的第n个子元素E
E:first-of-type指定类型E的第一个
E:last-of-type指定类型E的最后一个
E:nth-of-type(n)指定类型E的第n个
nth-child(n) 选择某个父元素的一个或多个特定的子元素(重点)
1.n 可以是数字,关键字和公式
2.n 如果是数字,就是选择第 n 个子元素, 里面数字从1开始…
3.n 可以是关键字:even 偶数,odd 奇数
4.n 可以是公式:常见的公式如下 ( 如果n是公式,则从0开始计算,但是第 0 个元素或者超出了元素的个数会被忽略 )
2.3 结构伪类选择器
选择符
E:first-child匹配父元素中的第一个子元素E
E:last-child匹配父元素中最后一个E元素
E:nth-child(m)匹配父元素中的第n个子元素E
E:first-of-type指定类型E的第一个
E:last-of-type指定类型E的最后一个
E:nth-of-type(n)指定类型E的第n个
区别:
1. nth-child 对父元素里面所有孩子排序选择(序号是固定的) 先找到第n个孩子,然后看看是否和E匹配
2. nth-of-type 对父元素里面指定子元素进行排序选择。 先去匹配E ,然后再根据E 找第n个孩子
2.4 伪元素选择器
伪元素选择器可以帮助我们利用CSS创建新标签元素,而不需要HTML标签,从而简化HTML结构。
选择符
::before在元素内部的前面插入内容
::after在元素内部的后面插入内容
注意:
1.before 和 after 创建一个元素,但是属于行内元素
2.新创建的这个元素在文档树中是找不到的,所以我们称为伪元素
3.语法: element::before {}
4.before 和 after 必须有 content 属性
5.before 在父元素内容的前面创建元素,after 在父元素内容的后面插入元素
2.5 CSS3 盒子模型
CSS3 中可以通过 box-sizing 来指定盒模型,有2个值:即可指定为 content-box、border-box,这样我们
计算盒子大小的方式就发生了改变。
可以分成两种情况:
1. box-sizing: content-box 盒子大小为 width + padding + border (以前默认的)
2. box-sizing: border-box 盒子大小为 width
如果盒子模型我们改为了box-sizing: border-box , 那padding和border就不会撑大盒子了(前提padding和border不会超过width宽度)

posted @ 2021-04-22 15:13  xin-xinx  阅读(325)  评论(0)    收藏  举报