让样式在IE中作用到未知的元素上
http://www.itjxue.com 2015-08-07 22:15 来源:未知 点击次数:
Sjoerd Visscher 发现了一个简洁的 方法 让样式在 IE 中作用到未知的元素上——仅需 JS 创建此未知元素即可:
document.createElement(elementName)
同理(对于 IE 来说 HTML5 元素即是未知元素),该方法也可顺延到 HTML5 的元素上(详细见:John Resig 写的 《HTML5 Shiv》 一文):
<html>
<head>
<style>section { color: red; }</style>
<script>document.createElement("section")</script>
</head>
<body>
<section>Hello World!</section>
</body>
</html>
在 IE 中,为了更方便使用 HTML5 元素,我们可以引入这样的脚本:
详细具体应用的案例如下:
- 《Moving markup towards HTML5》
- 《Test new HTML 5 elements》
Popularity: 5% [?]
(function(){
// from: http://dean.edwards.name/weblog/2007/03/sniff/
if(!/*@cc_on!@*/0) return;
var html5 = "abbr,article,aside,audio,bb,canvas,datagrid,datalist,details,dialog,
eventsource,figure,footer,hgroup,header,mark,menu,meter,nav,output,
progress,section,time,video".split(',');
for(var i = 0, len = html5.length; i < len; i++ )
document.createElement(html5[i]);
}
})();