• css HACK


    1、什么是CSS hack?

    CSS hack是通过在CSS样式中加入一些特殊的符号,让不同的浏览器识别不同的符号
    (什么样的浏览器识别什么样的符号是有标准的,CSS hack就是让你记住这个标准),以达到应用不同的CSS样式的目的,

    比如.kwstu{300px;_200px;}
    一般浏览器会先给元素使用300px;的样式,紧接着后面还有个_200px;
    由于下划线_width只有IE6可以识别,所以此样式在IE6中实际设置对象的宽度为200px,后面的把前面的给覆盖了,
    而其他浏览器不识别_width不会执行_200px;这句样式,所以在其他浏览器中设置对象的宽度就是300px;

    2.CSS hack解决问题

    CSS hack用来解决有些css属性在不同浏览器中显示的效果不一样的问题,
    
    如margin属性在ie6中显示的距离会比其他浏览器中显示的距离宽2倍,也就是说margin-left:20px;在ie6中距左侧对象的实际显示距离是40px,而在非ie6中显示的距左侧对象的距离是设置的值20px;
    
    所以要想设置一个对象距离左侧对象的距离在所有浏览器中都显示是20px的宽度的样式应为:.kwstu{margin-left:20px;_margin-left:20px;}。

    3、浏览器识别字符标准对应表

    从上图可以分析出以下几种情况:

    1.大部分特殊字符IE浏览器支持,其他主流浏览器firefox,chrome,opera,safari不支持 (opera可识别除外)。 2.9 :所有IE浏览器都支持 3._和- :仅IE6支持 4.* :IE6、E7支持 5. :IE8、IE9支持,opera部分支持 6.9 :IE8部分支持、IE9支持 7.9 :IE8、IE9支持
    所以我们可以把顺序写成这样:(这也是兼容各大主流游览器的汇总)

    .element{

      color:#000;             /*w3c标准*/

      [;color:#f00;];         /*Webkit(chrome和safari)*/

      color:#6669;           /*IE8*/

      *color:#999;            /*IE7*/

      _color:#333;            /*IE6*/

    }
      :root .element{color:#0f09;}  /*IE9*/

      @media all and (-webkit-min-device-pixel-ratio:10000), not all and (

      -webkit-min-device-pixel-ratio:0) {
        .element{color:#336699;}
      }  /*opera*/

      @-moz-document url-prefix(){
        .element{color:#f1f1f1;}
      } /*Firefox*/

    (1)清除浮动

    在Firefox中,当子级都为浮动时,那么父级的高度就无法完全的包住整个子级,那么这时用这个清除浮动的HACK来对父级做一次定义,那么就可以解决这个问题。

    select:after {
      content:”.”;
      display:block;
      height:0;
      clear:both;
      visibility:hidden;
    }
  • 相关阅读:
    NullPointerException
    面试oracle 经常问的一个问题- 事务
    python 之 import、from、as 关键字的 白话 解释与例子
    python 学习 之 第二章(条件、循环和其他语句)
    python学习 之 第一章 (简单例子与常用数据类型)
    python中常用函数含义记录
    python 2 版本中的input() 和 raw_input() 函数的比较
    字符串处理关键字str 和 repr
    文件操作-一个可以直接复制文件数据的小程序
    C语言 32个关键字
  • 原文地址:https://www.cnblogs.com/cynthia-wuqian/p/5258098.html
Copyright © 2020-2023  润新知