你能让少量较早的浏览器(不支持HTML5)支持 HTML5。
HTML5 浏览器支持
现代的浏览器都支持 HTML5。
此外,所有浏览器,包括旧的和最新的,对无法识别的元素会作为内联元素自动解决。
正由于如此,你能 "教会" 浏览器解决 "未知" 的 HTML 元素。
![]() | 甚至你能教会 IE6 (Windows XP 2001) 浏览器解决未知的 HTML 元素。 |
---|
将 HTML5 元素定义为块元素
HTML5 定了 8 个新的 HTML 语义(semantic) 元素。所有这些元素都是 块级 元素。
为了可以让旧版本的浏览器正确显示这些元素,你能设置 CSS 的 display 属性值为 block:
实例
header, section, footer, aside, nav, main, article, figure{display:block; }
为 HTML 增加新元素
你能为 HTML 增加新的元素。
该实例向 HTML 增加的新的元素,并为该元素定义样式,元素名为
实例
我的第一个段落。
JavaScript 语句 document.createElement("myHero") 是为 IE 浏览器增加新的元素。
Internet Explorer 浏览器问题
你能用以上的方法来为 IE 浏览器增加 HTML5 元素,但是:
![]() | Internet Explorer 8 及更早 IE 版本的浏览器不支持以上的方式。 |
---|
我们能用 Sjoerd Visscher 创立的 "HTML5 Enabling JavaScript", " shiv" 来处理该问题:
以上代码是一个注释,作使用是在 IE 浏览器的版本小于 IE9 时将读取 html5.js 文件,并解析它。
注意:国内使用户请用本站静态资源库(Google 资源库在国内不稳固):
针对IE浏览器html5shiv 是比较好的处理方案。html5shiv主要处理HTML5提出的新的元素不被IE6-8识别,这些新元素不可以作为父节点包裹子元素,并且不可以应使用CSS样式。
完美的 Shiv 处理方案
实例
html5shiv.js 引使用代码必需放在
元素中,由于 IE 浏览器在解析 HTML5 新元素时需要先加载该文件。如您还有不明白的能在下面与我留言或者是与我讨论QQ群308855039,我们一起飞!