在到達無H無F境界前~還是要痛苦~我相容瀏覽器的CSS

來源:互聯網
上載者:User

對著多個解析不一樣瀏覽器是件鬱悶的事,是所有寫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

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 都是痛苦的
解決今天的問題不是為了生產明天的問題。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.