1. 语义化标签
html5给我们增加了许多语义化的标签,比如header、footer、nav、main、article、aside等,这些标签和div有同样的作用,只不过是更加语义化了。
2. 兼容性问题
主流的浏览器对HTML5和CSS3有很好的支持,但是对于IE8及以下就需要做兼容性处理。比如:HTML5里面的语义化标签在IE8及以下是不能够识别的,因此我们可以通过js的代码来创建这些标签 document.createElement('header')
,除此之外我们也可以引入第三个插件来解决IE8及以下的兼容性问题,如:html5shiv链接地址
3. HTML5里新增属性,主要是和表单相关的
<input type=‘value’>
这里的value可以是text、password、email、tel、url、number、search、range、color、time、data、datatime、datatime-local、week
其中:
- email 能够验证当前输入的邮箱地址是否合法。
- tel 并不能验证是否是合法的手机号,因此HTML5的标准是全球标准,并不是所有的国家手机号都和中国的一样。其本质为在移动端中,只能打开数字键盘,而不是字母键盘,限制只能输入数字
- url验证URL
- number 只能输入数字,其他输入不了,而且自带上下增大减小箭头,max属性可以设置为最大值,min可以设置为最小值,value为默认值。
- search输入框后面会给提供一个小叉,可以删除输入的内容,更加人性化。
- range可以提供给一个范围,其中可以设置max和min以及value,其中value属性可以设置为默认值
- color提供了一个颜色拾取器
- time 时分秒
- data 日期选择年月日
- datatime 时间和日期(目前只有Safari支持)
- datatime-local
- week
4. form表单里的新增属性
- placeholder 提示信息
- autofocus 自动获取焦点
- autocomplete=“on” 或者 autocomplete=“off” 使用这个属性需要有两个前提:
- 必须表单提交过。
- 必须有name属性。
- required要求输入框不能为空,必须有值才能够提交。
- pattern=" " 里面写入想要的正则模式,例如手机号patte="^(+86)?\d{10}$"
- multiple可以选择多个文件或者多个邮箱
- form=" form表单的ID"
使用场景:
<form id='myForm'>
<input type='text'>
<input type='submit'>
</form>
<input type='text' name='address' form='myForm'> 这样当点击submit的时候,这个输入框的内容也会被提交。
- 对于select标签,HTML5提供了既能够输入又能够选择的datalist标签,但是这个标签目前浏览器对他的兼容性并不是很好,所以目前很少使用。
专业:<input type='text' list='subjects'>
<!--id是来建立input和datalist的联系,label是提示值 -->
<datalist id='subjects'>
<option value='one' label='这是1'>
<option value='two' label='这是2'>
<option value='three' label='这是3'>
</datalist>
5. form表单里的新增事件
- oninput 每当input里的输入框内容发生变化都会触发此事件。
- oninvalid 当验证不通过时触发此事件。
使用场景:当验证不通过时提示我们自定义的提示信息
document.getElementById('userphone').oninvalid(function(){
this.setCustomValidity("请输入合法的11位数字")
})
6.进度条
<progress value='10' max='100'></progress>
7. 度量器:衡量当前进度值
<meter min="0" low="40" high="90" max="100" value="95"></meter>
8. HTML5里新增的多媒体标签
1.audio音频
<audio src='' controls autoplay loop='true'></audio>
属性:
- controls 控制面板
- autoplay 自动播放
- loop=‘true’ 循环播放
2. video视频
<video src='' poster='imgs/aa.jpg' controls></video>
属性:
- poster:指定视频还没有完全下载完毕,或者用户还没有点击播放前显示的封面。默认显示当前视频文件的第一针画面,当然通过poster也可以自己指定。
- controls 控制面板
- width
- height
注意:
在设置视频宽高的时候,视频的宽高比例是固定不变的,也就是只能设置宽度或者设置高度,而不能同时设置宽度和高度,否则画面不会按照你指定的宽高显示,依然是等比例显示,只是占据了空间大小。 - source标签:因为浏览器对视频格式支持程度不一样,为了能够兼容不同的浏览器,可以通过source来指定视频源。
<video>
<source src='aa.flv' type='video/flv'></source>
<source src='aa.mp4' type='video/mp4'></source>
</video>
9. HTML5里新增的查询DOM的操作
可以是标签,可以是类(需要加点),可以是ID(需要加#)
1. document.querySelector()
2. document.querySelectorAll()
10. HTML5里新增的操作CSS样式的方法