我已经在所有页面中使用HTML5 Doctype。还有其他的HTML5规范/特性可以立即开始使用吗?
条件如下:
- 跨浏览器 - 对IE6的支持是可选的,但请注明
- 请勿使用任何hack [包括javascript等]
- 如果该功能在旧版浏览器中逐渐降级,则完全可以接受
我已经在所有页面中使用HTML5 Doctype。还有其他的HTML5规范/特性可以立即开始使用吗?
条件如下:
需要注意的是一些HTML5 input
类型。据我所知,任何不识别input
元素上的类型的浏览器都会默认为type="text"
。增加的价值很小,但值得注意。
例如,在运行iPhone OS的设备上,像这样的元素:
<p><label>电话:<input type=tel></label></p>
或者,
<p><label>电子邮件地址:<input type=email></label></p>
将会弹出一个适当的键盘,给予在相应的
input
中经常需要的字符更多的重视。
鉴于其巨大的语义和用户体验价值以及优雅的降级,我已经在生产网站上采用了这种方式而没有受到任何损害。在某些情况下,特别是在混合的doctypes
中,您可能会失去验证,但这在过渡期内是可以预料的,并且是我愿意承担的牺牲。
关于更新的表单元素和规范,W3C网站上有很多有用的信息。
如果你的网站最低支持IE7浏览器,那就不用考虑HTML5(因为在它被任何人,更不用说微软考虑之前,IE7已经上线很久了)。
Quirksmode有一个功能可用性图表:http://www.quirksmode.org/dom/html5.html
这取决于你认为什么是“HTML5功能”。许多HTML5中的“新”功能实际上是从IE中反向工程出来的。例如,insertAdjacentHTML
在IE4+中就支持。甚至可以将innerHTML
视为HTML5功能,因为它以前从未成为标准。另一方面,在HTML5中专门设计的功能,例如section
和<input type=tel>
,非常不可能在IE7中实现。
(还要注意的是,IE7是在2006年末发布的,而HTML5的工作始于2004年。)