HTML5新特性

121 阅读4分钟

(1)新的语义标签和属性

新的语义化标签:header、footer、nav、section、article、aside、details、time、rudy、mark等

新的属性:表单新属性、链接新属性、其他(ol新增reversed、meta新增charset、menu新增type和label、style新增scoped、script新增async、html新增manifest、iframe新增sandbox、seamless、srcdoc)

(2)表单的新特性

新的input type:email、 url、 number、 tel、 search、 range、 color、 date、 month、 week

新的表单元素:datalist、progress、meter、output

表单元素的新属性:autocomplete、autofocus、placeholder、multiple、form

required、maxlength、minlength、min、max、step、pattern

(3)视频和音频

HTML5提供一个新的标签<video>标签,用于播放视频,该标签默认是一个300*150的inline-block,使用方法

<video src=”x.mp4”></video>

HTML5提供一个新的标签<audio>标签,用于播放音频,该标签若没有controls属性,则默认display:none;反之则是一个300*30的inline-block,使用方法

<audio src=”x.mp3”></video>

(4)Canvas绘图

mp.csdn.net/mdeditor/84…

(5)SVG

使用SVG绘制矩形:<rect width="" height="" x="" y=”"></rect>

注意:SVG图形的样式可以用HTML属性赋值,也可以使用CSS形式,但不接受普通的CSS属性!只能用SVG元素专有的属性

SVG图形的属性不属于HTML DOM标准,只能使用核心DOM方法操作其属性:rect.setAttribute(‘’,’’)

使用JS动态创建SVG元素

用svg.innerHTML=’’

用document.createElementNS(‘’,’’),不能使用document.createElement

使用SVG绘制圆形:<circle r=”” cx=”” cy=””></circle>

使用SVG绘制椭圆:<ellipse rx="200" ry="50" cx="200" cy="50" fill="#0f0" fill-opacity=".2" id="e1"></ellipse>

使用SVG绘制直线:<line x1="0" y1="0" x2="600" y2="400" stroke="#f00" stroke-width="2px"></line>

可以使用<g></g>来表示公共属性
<svg width="600" height="400">

<!--group——小组-->

<g stroke-width="50" stroke="#000">

<line x1="100" y1="100" x2="200" y2="100"></line>

<line x1="250" y1="100" x2="450" y2="100"></line>

<line x1="100" y1="200" x2="200" y2="200"></line>

<line x1="250" y1="200" x2="450" y2="200"></line>

<line x1="100" y1="300" x2="200" y2="300"></line>

<line x1="250" y1="300" x2="450" y2="300"></line>

</g>

</svg>
注意:所有的SVG图形默认只有填充色,没有描边色

使用SVG绘制折线:<polyline points="100,100 400,100 150,350 250,0 350,350 100,100" stroke="#000" fill-opacity="0"></polyline>

使用SVG绘制多边形:<g stroke="#030"> <polygon points="100,100 300,200 500,100"></polygon> <polygon points="100,150 100,300 500,300 500,150 300,230 100,150"></polygon> </g>

使用SVG绘制文本

提示:传统的标签不能置于SVG内部!同理,SVG的标签也不能放在其他元素内部

<text alignment-baseline="before-edge" font-size="40" x="100" y="200">

哈哈哈哈哈

</text>
使用SVG绘制图像 :<image xlink:href="../img/22.png" width="400" height="200"></image>

提示:在SVG中绘制图像使用image元素,引入位图后,此SVG图片放大后会失真

(6)地图定位

HTML5新增了获得浏览器所在地的对象

window.navigator.geolocation{
getCurrentPosition:fn,//用于获取当前定位信息
watchPosition:fn,//不停的监视定位信息的改变
clearWatch:fn//清除监视
}

navigator.geolocation.getCurrentPosition(
function(pos){
console.log('定位成功');
},function(err){
console.log('定位失败');
}
)

(7)拖放API

拖放API——七个事件

源对象可以触发的事件:dragstart:拖动开始 drag:拖动中 dragend:拖动结束

目标对象可以触发的事件:dragenter:拖动着进入 dragover 拖动着在目标对象上方 dragleave:拖动着离开 drop:释放

(8)WebWoker

(9)WebStorage

(10)WebSocket
---------------------
作者:qq_41805715
来源:CSDN
原文:blog.csdn.net/qq_41805715…
版权声明:本文为博主原创文章,转载请附上博文链接!