• 针对Internet Explorer的CSS


    尽管我们非常讨厌和IE bugs打交道,可还是要面对它,因为你的老板和访问者仍然在使用IE。由于不同版本IE的渲染引擎不一致,所以显示出来的页面也是不尽相同的,这让人感到非常沮丧。通常我们会使用有条件的注释来修复IE的问题。但其实还有更多的方法……

    查看示例针对IE的CSS

    一、IE注释

    使用IE注释的方法也许是最常使用的解决IE bugs的方法。它可以针对不同版本的IE来使用(IE6、IE7、IE8)。以下是针对不同版本的IE的样本代码:

    • <!–[if IE 8]> = IE8
    • <!–[if lt IE 8]> = IE7或更低版本
    • <!–[if gte IE 8]> = 高于或者等于IE8版本
    1<!--[if IE 8]>
    2<style type="text/css">
    3        /* css for IE 8 */
    4</style>
    5<![endif]-->
    6 
    7<!--[if lt IE 8]>
    8        <link href="ie7.css" rel="stylesheet" type="text/css" />
    9<![endif]-->

    二、针对Explorer的CSS规则(IE CSS Hacks)

    另外一个选择是声明只有Explorer能够解析的CSS规则。比如,在CSS属性之前加上一个星号可以锁定IE7,而在属性前加上下划线会锁定IE6。但是我们并不推荐这种方法,因为它不符合CSS的语法。

    • IE8或者低于IE8:要针对IE8或者低于IE8版本写CSS规则,可以在分号之前加上反斜杠和数字9。
    • IE7或者低于IE7:在CSS属性前加星号。
    • IE6:在属性前加下划线。
    1.box {
    2        backgroundgray/* 标准浏览器 */
    3        background: pink\9/* IE 8以及较低版本*/
    4        *backgroundgreen/* IE 7以及较低版本*/
    5        _backgroundblue/* IE 6 */
    6}

    三、有条件的HTML类

    Paul Irish创建的第三个选择,是在使用IE条件注释方法的同时,在html标签中创建由IE版本名称为一个类别的CSS类。基本上,当它检查到是IE时,会给html标签添加一个类。因此,想要锁定特定的IE版本,只需要使用IE类作为父选择器(例如:.ie6 .box)。这是一个非常聪明的办法,而且他不会引起任何的非法性错误。

    1<!--[if lt IE 7 ]> <html class="ie6"> <![endif]-->
    2<!--[if IE 7 ]> <html class="ie7"> <![endif]-->
    3<!--[if IE 8 ]> <html class="ie8"> <![endif]-->
    4<!--[if IE 9 ]> <html class="ie9"> <![endif]-->
    5<!--[if (gt IE 9)|!(IE)]><!--><html><!--<![endif]-->

    原文:CSS Specific for Internet Explorer

  • 相关阅读:
    mongodb搭建
    使用systemctl管理服务
    常用命令--find
    linux中的常用信号
    bash 中的特殊变量
    tomcat开启PID文件
    django基础入门
    Redis源码编译安装
    DRF路由组件
    Django/DRF序列化
  • 原文地址:https://www.cnblogs.com/fxair/p/2717691.html
Copyright © 2020-2023  润新知