一、2011年HTML5的浏览器支持现状
2011年,IE9已经发布,但IE6/7/8仍占据国内浏览器市场的半壁江山。Chrome、Firefox、Safari对HTML5的支持较好。这意味着企业网站不能盲目使用HTML5,必须考虑IE8及以下用户的降级方案。
我们的策略是"渐进增强":先确保在旧浏览器中基础功能可用,再为现代浏览器增加HTML5增强体验。
二、可以安全使用的HTML5特性
2.1 语义化标签
<header>、<nav>、<section>、<article>、<footer>等语义化标签,在现代浏览器中可以直接使用。对于IE8及以下,需要通过JavaScript创建这些元素才能应用CSS样式:
document.createElement('header'); document.createElement('nav'); ...
配合html5shiv库(2011年已流行),可以让IE6-8识别HTML5语义标签。
2.2 Canvas绘图
Canvas在Chrome、Firefox、Safari中支持良好,可用于数据图表、简单游戏、图形处理。IE9开始支持Canvas,IE8及以下可使用ExplorerCanvas(excanvas.js)模拟。
2.3 本地存储(localStorage)
localStorage提供5MB的键值对存储,比Cookie更高效,且不随请求发送到服务器。适合缓存用户偏好设置、表单草稿等。IE8开始支持localStorage,IE7及以下需要使用Cookie或Flash hack降级。
2.4 Web Forms 2.0
新的input类型:type="email"、type="number"、type="date"、type="search"。在支持的浏览器中自动提供键盘类型和验证,在旧浏览器中自动降级为普通文本输入框,非常安全。
三、需要谨慎使用的特性
3.1 WebSocket
2011年WebSocket协议还在频繁变动,浏览器支持不一致,且企业代理服务器可能阻断WebSocket连接。对于实时性要求不高的场景,我们建议继续使用长轮询(Long Polling)。
3.2 Geolocation
地理定位API可以获取用户位置,但需要用户授权。在移动端浏览器中支持较好,桌面端支持参差。用于LBS类应用时务必提供手动输入地址的降级方案。
3.3 Video/Audio标签
HTML5音视频虽然方便,但编解码格式不统一:H.264在Safari和IE中支持,Firefox和Opera偏好Ogg Theora。2011年我们仍以Flash播放器作为主要视频方案,HTML5 video作为增强。
四、CSS3配套特性
与HTML5配套的CSS3特性在2011年已经广泛使用:
- border-radius:圆角,替代图片圆角。
- box-shadow:阴影效果。
- CSS渐变:线性渐变背景。
- RGBA颜色:带透明度的颜色值。
这些特性在IE9中支持,IE8及以下自动降级为纯色,不影响基本功能。
五、企业网站推荐策略
对于面向大众用户的企业网站,2011年我们建议:
- 布局和样式使用HTML5语义标签 + CSS3渐进增强。
- 表单使用新input类型,自动验证降级为JavaScript验证。
- 关键交互仍以jQuery为主,不要为了追新技术牺牲兼容性。
- 视频内容提供Flash和HTML5双方案。
六、总结
HTML5代表了Web的未来,但2011年它还处于早期阶段。务实的做法是拥抱那些安全可用的特性,同时为最大多数用户保证基本体验。技术选型永远要以用户为中心,而不是以技术潮流为中心。