欢迎光临杨雨的个人博客站!

杨雨个人网站-杨雨个人博客-杨照佳

杨雨个人博客网站

关注互联网和搜索引擎的个人博客网站

首页 > 心得笔记 >

HTML5网页如何让所有的浏览器都能识别语义元素标签样式

发布时间:2014-11-02  编辑:杨雨个人博客网站   点击:   

给大家分享一下HTML5网页如何让所有的浏览器都能识别语义元素标签样式,浏览器对语义元素的支持情况如今HTML5愈来愈引发大家的关注了,但目前支持HTML5的浏览器还不是主流,特别是国内用户近50%以上仍旧使用IE6,由于支持HTML5的IE9不支持Xp系统安装,这样未来很长一段时间,HTML5的开发者将必须考虑向下兼容的问题。

HTML5的标签或CSS选择器兼容性的做法有很多,其中自己生成标签元素就是一种。
为了让浏览器能识别html新标签并显示对应样式的效果有几种不同的办法:

一、不认识html5语义元素的浏览器不知道因为怎样把它们显示成块级元素,所以会把它们挤到一起。未解决这个问题,只要在样式表中添加一条超级规则即可。

article,aside,figure,figcaption,footer,header,hgroup,nav,section,summary {dispaly:block;}PS:对于大多数浏览器,第一种技术可以解决问题。但这里的大多数并不包括IE8以及更早的版本。

换句话说,对于较早版本的IE,还要面临一个挑战:他们会拒绝给无法识别的元素应用样式。好在有一个可以变通方案:通过JavaScript创建新元素,可以骗过IE,让它来识别外来元素,比如,下面的方法

二、脚本可以让IE识别并为<header>元素应用样式:

<script>document.createElement('header')</script>

三、实际上,你不用亲自写这些代码,只要在<header>区块中引用它即可,就像这样:

<head>
<title></title>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
...</head>
PS:html5.js脚本应该是有条件执行的——只在你使用旧版本IE的情况下才会执行。为了避免不必要的加载js文件,可以像下面这样引用脚本代码放在IE的条件注释中
<!--[if lt IE 9]> <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> <![endif]-->
这样其他浏览器(IE9以及更高版本)就会忽略这行脚本,为你的页面节省毫秒的加载时间。

四、使用Modernizr,Modernizr会自动替你解决上述问题,不用使用html5.js或者样式规则。

1、打开www.modernizr.com,找到 Download Modernizr 区域,单击其中的Development按钮,下载Modernizr的js文件。
2、把下载到的js文件放到你的网页所在文件夹,例如js文件夹。
3、在页面<head>区块中添加对这个js文件的引用。
示例:
<head>
<meta charset="utf-8">
<title>Html5</title>
<!--[if lt IE 9]> <script src="/js/modernizr.js"></script> <![endif]-->
...</head>
本文地址:http://itbyc.com/log/78.html
转载请注明出处。
分享是一种快乐,也是一种美德:
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
博客首页 | WEB开发 | 网站运营 | CMS使用教程 滇ICP备14002061号-1