1 針對firefox ie6 ie7的css樣式
現在大部分都是用!important來hack,對於ie6和firefox測試可以正常顯示,
但是ie7對!important可以正確解釋,會導致頁面沒按要求顯示!找到一個針
對IE7不錯的hack方式就是使用“*+html”,現在用IE7瀏覽一下,應該沒有問題了。
現在寫一個CSS可以這樣:
#1 { color: #333; } /* Moz */
* html #1 { color: #666; } /* IE6 */
*+html #1 { color: #999; } /* IE7 */
那麼在firefox下字型顏色顯示為#333,IE6下字型顏色顯示為#666,IE7下字型顏色顯示為#999。
----------------------------------
按教程,即本文所講的方法,同時應用: text-overflow:ellipsis; white-space:nowrap; overflow:hidden; 實現了所想要得到的溢出文本顯示省略符號效果:請您特別注意,text-overflow:ellipsis屬性在FF中是沒有效果的。
-------------------------------------------------------------------------------------------------
比如 IE6能識別底線_和星號*,IE7能識別星號*,當不能識別底線_,而firefox兩個都不能認識。等等
書寫順序,一般是將識別能力強的瀏覽器的CSS寫在後面。下面如何寫裡面說得更詳細些。
如何寫CSS Hack
比如要分辨IE6和firefox兩種瀏覽器,可以這樣寫:
區別不同瀏覽器,CSS hack寫法:
例:
1. <style>
2. div{
3. background:green; /* for firefox */
4. *background:red; /* for IE6 */
5. }
6. </style>
7. <div>我在IE6中看到是紅色的,在firefox中看到是綠色的。</div>
解釋一下:
上面的css在firefox中,它是認識不了後面的那個帶星號*的東東是什麼的,於是將它過濾掉,不予理睬,解析得到的結果是:div{background:green},於是理所當然這個div的背景是綠色的。
在IE6中呢,它兩個background都能識別出來,它解析得到的結果是:div{background:green;background:red;},於是根據優先順序別,處在後面的red的優先順序高,於是當然這個div的背景顏色就是紅色的了。
區別IE6與FF:
background:orange;*background:blue;
區別IE6與IE7:
background:green !important;background:blue;
區別IE7與FF:
background:orange; *background:green;
區別FF,IE7,IE6:
background:orange;*background:green !important;*background:blue;
註:IE都能識別*;標準瀏覽器(如FF)不能識別*;
IE6能識別*,但不能識別 !important,
IE7能識別*,也能識別!important;
FF不能識別*,但能識別!important;
IE6 IE7 FF
* √ √ ×
!important × √ √
另外再補充一個,底線"_",
IE6支援底線,IE7和firefox均不支援底線。
於是大家還可以這樣來區分IE6,IE7,firefox
: background:orange;*background:green;_background:blue;
註:不管是什麼方法,書寫的順序都是firefox的寫在前面,IE7的寫在中間,IE6的寫在最後面。