当前位置: 首页 > 图文教程 > 网页制作 > HTML/XHTML教程 > 让IE支持HTML5办法

HTML/XHTML教程
关于网页源代码屏蔽(2)
关于网页源代码屏蔽(3)
HTML组件之:HTML行为和HTC行为
HTML组件之:定义标记和命名空间
HTML组件之:最顶级页面(1)
HTML组件之:最顶级页面(2)
HTML组件之:最顶级页面(3)
HTML组件之:编写日历(1)
HTML组件之:编写日历(2)
HTML组件之:编写日历(3)
HTML组件之:ANYDAY 和 TODAY HTC(1)
HTML组件之:ANYDAY 和 TODAY HTC(2)
HTML组件之:日历主页面
HTML组件之:CALENDAR HTC
CSS代码缩写技巧
CSS的十八般技巧(1)
CSS的十八般技巧(2)
HTML中小meta的大作用
CSS类及id的规范化命名
创建一个纯CSS的水平导航条

HTML/XHTML教程 中的 让IE支持HTML5办法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-03   浏览: 70 ::
收藏到网摘: n/a

HTML5预计是在2022年发布,但我认为它距离我们并不是那么遥远,因为在html5gallery就例举了大量正在使用HTML5的站点,当然包括本人BLOG在内。关于HTML5不得不提IE,在苹果、Google、Opera和Mozilla等主流浏览器厂商积极参与新版本HTML标准的制定和推广时,微软却对HTML 5规范不屑一顾。然而微软近期才表态要在IE中支持HTML 5,以致到今天为止的IE8及以下是无法支持HTML5标签的。但在sitepoint找到了让IE支持HTML5办法。

以下是在的IE 8显示的例子,未作处理前:
在IE 8显示的例子,未作处理前
让IE(包括IE6)支持HTML5元素,我们需要在HTML头部添加以下JavaScript,这是一个简单的document.createElement声明,利用条件注释针对IE在对象中创建对应的节点。

<!--[if IE]>
<script>
document.createElement("header");
document.createElement("footer");
document.createElement("nav");
document.createElement("article");
document.createElement("section");
</script>
<![endif]-->

添加以上代码后,在IE8中显示的效果如下:
在IE 8显示的例子,处理后

sitepoint例子中创建节点的JavaScript代码似乎过于臃肿,在smashingmagazine提供的代码似乎更简洁。
Demo:http://blog.gulu77.com/demo/200908/html5_demo3.html

<!--[if IE]>
<script>
(function(){if(!/*@cc_on!@*/0)return;var e = "header,footer,nav,article,section".split(','),i=e.length;while(i--){document.createElement(e[i])}})()
</script>
<![endif]-->

HTML5在默认情况下表现为内联元素,对这些元素进行布局我们需要利用CSS手工把它们转为块状元素,如下例:

header, footer, nav, section, article {
display:block;
}