zoukankan      html  css  js  c++  java
  • 让你的HTML5&CSS3网站在老IE中也能正常显示的3种方法

    起初,IE其实也是一款非常有进取心的浏览器。但经过一段时间的蛰伏后,它已经成为了我们生活中的一道障碍。微软现在又重新开始向其它浏览器发起挑战,但事实情况是,新版的现代IE浏览器一直滞后于谷歌浏览器和火狐浏览器。我们还不得不想办法兼容早期的IE浏览器。下面提到的三种方法能快捷轻松的让你的HTML5&CSS3网站在微软的主要浏览器中也能神奇的运行!

      htmlshiv.js

      Remy开发的HTML5shiv工具能利用JavaScript在老式IE里创建main,header,footer等HTML5元素。也就是说使用JavaScript能创建这些本来不存在的HTML5新元素。这是什么原理?你可能花几天也想不明白,但谁在意呢!这个脚本几乎是所有正式网站必用的js。

    <!--[if lt IE 9]>
    
    <script src="dist/html5shiv.js"></script>
    
    <![endif]-->
      selectivizr.js

    Selectivizr.js是一款神奇的工具,它能提供大量IE不支持的CSS选择器和属性,包括所有的last-child选择器。最近在网站改版过程中,我使用了selectivizr,网站竟然可以毫不走样的在老式IE浏览器的正常显示。下面是我使用的代码片段:

    <!--[if lte IE 8]><script src="js/libs/selectivizr.js"></script><![endif]-->

      现代新技术WEB项目不可缺少的js库。它只会在老式IE里加载。

      <html>条件判断注释

      你一定见到过这种极其丑陋的条件判断注释。然而,丑虽丑,它却能让你的网页能按你希望的方式运行:

    <!DOCTYPE html>
    
    <!--[if lt IE 7 ]> <html class="ie6 lazy " lang="en"> <![endif]-->
    
    <!--[if IE 7 ]>    <html class="ie7 lazy " lang="en"> <![endif]-->
    
    <!--[if IE 8 ]>    <html class="ie8 lazy " lang="en"> <![endif]-->
    
    <!--[if IE 9 ]>    <html class="ie9 lazy " lang="en"> <![endif]-->
    
    <!--[if (gt IE 9)|!(IE)]><!--> <html lang="en"> <!--<![endif]-->

      这段代码不需要JavaScript,不需要等待JavaScript的加载,你定义的CSS样式会立即生效起作用,没有那种因为加载延迟而出现的样式闪变。

      虽然IE在奋起直追它的那些竞争对手,但现实情况是老式的IE浏览器仍然相当普遍,特别是在那些发展中国家。欣慰的是,上面的这些工具在所有浏览器里都可以使用。

  • 相关阅读:
    驱动之类似内存接口的介绍与应用20170209
    驱动之LCD的介绍与应用20170209
    驱动之NandFlash的介绍与应用20170209
    Android广播机制的深入学习
    C++的隐式类型转换与转换操作符
    PackageManager使用
    在命令行中通过adb shell am broadcast发送广播通知
    Android无法收到指定广播的问题总结
    overload, override和overwrite之间的区别
    Longest Substring Without Repeating Characters -- LeetCode
  • 原文地址:https://www.cnblogs.com/Hcjer/p/4003966.html
Copyright © 2011-2022 走看看