首页前端开发HTML如何使用HTML5 Shiv解决IE不兼容HTML5标签的方法

如何使用HTML5 Shiv解决IE不兼容HTML5标签的方法

时间2024-01-23 13:03:17发布访客分类HTML浏览835
导读:收集整理的这篇文章主要介绍了如何使用HTML5 Shiv解决IE不兼容HTML5标签的方法,觉得挺不错的,现在分享给大家,也给大家做个参考。这篇文章主要介绍了HTML5 Shiv完美解决IE(IE6/IE7/IE8 不兼容HTML5标签的方...
收集整理的这篇文章主要介绍了如何使用HTML5 Shiv解决IE不兼容HTML5标签的方法,觉得挺不错的,现在分享给大家,也给大家做个参考。这篇文章主要介绍了HTML5 Shiv完美解决IE(IE6/IE7/IE8)不兼容HTML5标签的方法,需要的朋友可以参考下

HTML5的语义化标签以及属性,可以让开发者非常方便地实现清晰的web页面布局,加上CSS3的效果渲染,快速建立丰富灵活的web页面显得非常简单。
HTML5的新标签元素有:
header> 定义页面或区段的头部;
footer> 定义页面或区段的尾部;
nav> 定义页面或区段的导航区域;
section> 页面的逻辑区域或内容组合;
article> 定义正文或一篇完整的内容;
aside> 定义补充或相关内容;


使用他们能让代码语义化更直观,而且更方便SEO优化。但是此HTML5新标签在IE6/IE7/IE8上并不能识别,需要进行JavaScript处理。以下就介绍几种方式。
方式一:Coding JavaScript

!--[if lt IE9]>
     script>
   (function() {
       if (!    /*@cc_on!@*/   0) return;
       VAR e = "abbr, article, aside, audio, canvas, datalist, details, diaLOG, eventsource, figure, footer, header, hgroup, mark, menu, meter, nav, output, PRogress, section, time, video".splIT(', ');
       var i= e.length;
   while (i--){
     document.createElement(e[i])   }
 }
    )() /script>
    ![endif]-->
    

如果是IE9以下的IE浏览器将创建HTML5标签, 这样非IE浏览器就会忽视这段代码,也就不会有无谓的http请求了。

第二种方法:使用GOOGLE的html5shiv包(推荐)

!--[if lt IE9]>
     script src="http://html5shiv.googlecode.COM/svn/trunk/html5.js">
    /script>
    ![endif]-->
    

由于国内google的服务器访问卡,建议调用国内的cdn

!--[if lt IE 9]>
    script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js">
    /script>
    ![endif]-->
    

但是不管使用以上哪种方法,都要初始化新标签的CSS.因为HTML5在默认情况下表现为内联元素,对这些元素进行布局我们需要利用CSS手工把它们转为块状元素方便布局

/*html5*/article,aside,dialog,footer,header,section,footer,nav,figure,menu{
display:block}
    

但是如果ie6/7/8 禁用脚本的用户,那么就变成了无样式的"白板"网页,我们该怎么解决呢?

我们可以参照faceBook的做法,即引导用户进入带有noscript标识的 “/?_fb_noscript=1”页面,用 html4 标签替换 html5 标签,这要比为了保持兼容性而写大量 hack 的做法更轻便一些。

!--[if lte IE 8]>
     noscript>
       style>
.HTML5-wrapPErs{
    display:none!important;
}
    /style>
       p class="ie-noscript-warning">
    您的浏览器禁用了脚本,请a href="">
    查看这里/a>
    来启用脚本!或者a href="/?noscript=1">
    继续访问/a>
    .   /p>
    /noscript>
    ![endif]-->
    

这样可以引导用户开启脚本,或者直接跳转到HTML4标签设计的界面。

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

html5实现兼容各大浏览器的播放器的解析

Html5中video标签无法播放mp4问题的解决办法

以上就是如何使用HTML5 Shiv解决IE不兼容HTML5标签的方法的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

上一篇: HTML5本地存储之Web Storage下一篇:如何使用HTML5 canvas实现雪花飘...猜你在找的html5相关文章 关于移动端h5开发相关内容总结2022-05-17html5教程-学表单的第二天2018-12-10html5教程-HTML5浏览器支持2018-12-10html5教程-HTML5智能表单2018-12-10html5教程-微信H5使用resLoader实现加载页效果2018-12-10html5教程-day01-初级-JS0-热身运动JS入门教程2018-12-10html5教程-html5shiv.js和respond.min.js2018-12-10html5教程-不同浏览器对于html5 audio标签和音频格式的兼容性2018-12-10html5教程-使用Html5实现手风琴案例2018-12-10html5教程-html5笔记2018-12-10 其他相关热搜词更多phpjavapython程序员load

若转载请注明出处: 如何使用HTML5 Shiv解决IE不兼容HTML5标签的方法
本文地址: https://pptw.com/jishu/584228.html
如何在canvas里面基于随机点绘制一个多边形 关于H5的pushState和replaceState的用法分析

游客 回复需填写必要信息