对着多个解析不一样浏览器是件郁闷的事,是所有写CSS的人都会遇到的。
虽然条件注释是一比较理想的做法,向前向后兼容。可惜我不大喜欢N个版本的CSS,

先说下我的自己的用法.
初始化Selectors{} 保证向后兼容性,
接着开始过滤
不管IE6有没有引进Quirks Mode
都用 * html Selectors{} 处理IE6和以下版本,
对下再向下版本的区分我做了比较复杂的处理。
用读入IE5.x

@media tty {
i{content:"\";/*" "*/}} @import 'ie5x.css'; /*";}
}/* */

在特别的要求下才会用,因为IE5跟IE5.5很多方面都很像。我选择把他们放在一样。
但是IE5总会相对笨点,
我必须再加区分,是用

*>html Selectors{} 

本来应该是*>html body Selectors{} 比较好处理优先权的问题,

IE7对于CSS的支持已经接近FF,Opera,Safari这些浏览器了,但是,总会有些特别的问题,
我选择用 *+html Selectors{} 来特别处理IE7,可是当IE7也引进Quirks Mode时,问题变得很复杂的,他对CSS的认识也降到IE5,很像,又有不一样滴,我想没找到解决的方式,所以我打死也不把IE7引进Quirks Mode
还有用*+html IE5也会认识。可通过IE5的方式提升优先权解决。

FF也不是标准的。有时还会有特别的问题。
用私有的东东来过,

 @namespace url(http://www.w3.org/1999/xhtml);
@-moz-document url("http://www.loaoao.com") {
Selectors{ ... !important}
}

Opera 呢。虽然通过ACID2
可在我无聊的的写法下~依然有问题像这样的 li:hover+li {} 不知道下个发布版本会不会解决
还好别人提供了

 @media all and (min-width: 0px){
Selectors{}
}

Safari 呢?请原谅我的穷,我没有钱买apple的东西,
我不知道到底会出现多少的问题。这是最最郁闷的事,还好Safari对标准支持很好,
更多过滤的方式可以参考 http://centricle.com/ref/css/filters/

不管是用hack还是filter 都是痛苦的
解决今天的问题不是为了生产明天的问题。

共有 4 条评论

  1. Aether @

    try konqueror in KDE,
    lex说Safari就是基于这个开发的。

  2. aoao @

    如果是Safari的代替者~比起konqueror,我喜欢Swift

  3. xiaosa @

    aa 好厉害啊…… 偶现在也要考虑标准问题……头痛……

    另外,偶现在用的是 macbook, 如果有需要,可以帮你在 Safari 下做测试……s

    另外…… 你的验证码真有创意…… -_-b

  4. aoao @

    我说潇洒,你的站怎几百年没更新了,我还以为你不用电脑了 ~_~
    我看上你的macbook鸟~XD

发表评论

(必填)

(必填)