zoukankan      html  css  js  c++  java
  • 区分IE8 、IE9 的专属css hack

    一般来说,我们写的结构比较好的时候,IE8/9下是没区别的.所以可能很少人关注只有IE8或只有IE9才识别的css hack.

    因为IE8及以下版本是不支持CSS3的,但是我们如果使用css3,在IE下IE9正常渲染,但我们又想让IE8及以下的浏览器实现同样的效果,且不希望使用css3pie或htc或条件注释等方法时,可能就会需要用到IE8和IE9的专属css hack了.

    1. .test{/* 1. */
    2.         /* color:#09F\0; 以前是IE8/9, 现在10也支持 */
    3.         color:#09F\0/; /* 以前是IE8 only, 现在IE9/10也支持. 如要排除IE9需要使用下面的rule重设IE9样式 */
    4. }
    5. @media all and(min-width:0){/* 2. */
    6.     .test{color:red\9;}/* IE9 only, 现在IE10也支持 */
    7.     /* Ps:老外的方法都是\0,根本没考虑Opera */
    8. }
    9. @media screen and(-ms-high-contrast: active),(-ms-high-contrast: none){/* 3. */
    10.    .test { color: green;}/* IE10+ */
    11. }
    12. :root .test { color:#963\9; } /* 以前IE9 only, 现在10也支持, 优先级高于@media, 优先级太高, 尽量少用 */

    注: IE老不按规矩, 以前IE8 only/IE9 only的hack, IE10 一出现都乱套了~ 
    为了避免看此文的同学失望而归, 从新又整理了一下内容(2013-01-28), 如有错误望指出.
    现在, 要想写出专门针对ie8或ie9的hack, 把1/2/3种组合在一起使用. 如果可以, 使用CSS条件注释更靠谱.

    此hack已经加入到我08年写的那个用css 写的一个浏览器检测中。

  • 相关阅读:
    css自适应宽高等腰梯形
    控制台屏蔽某console的输出
    js定时器的时间最小值-setTimeout、setInterval
    03_数字的字面量
    程序员-表情包
    程序员-趣图集
    js不是从上到下执行的吗?
    CSS样式重置
    系统程序名命令表
    js手风琴图片切换实现原理及函数分析
  • 原文地址:https://www.cnblogs.com/guke/p/3065145.html
Copyright © 2011-2022 走看看