天天看點

CSS Hack彙總快查

< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd>

<dl></dl>

<dt>屏蔽IE浏覽器(也就是IE下不顯示)</dt>

<dd>*:lang(zh) select {font:12px !important;}</dd>

select:empty {font:12px !important;}

這裡select是選擇符,根據情況更換。第二句是MAC上safari浏覽器獨有的。

<dt>僅IE7與IE5.0可以識别</dt>

<dd>*+html select {…}</dd>

當面臨需要隻針對IE7與IE5.0做樣式的時候就可以采用這個HACK。

<dt>僅IE7可以識别</dt>

<dd>*+html select {…!important;}</dd>

當面臨需要隻針對IE7做樣式的時候就可以采用這個HACK。

<dt>IE6及IE6以下識别</dt>

<dd>* html select {…}</dd>

這個地方要特别注意很多部落格都寫成了是IE6的HACK其實IE5.x同樣可以識别這個HACK。其它浏覽器不識别。

html &gt;body select {…}

這句與上一句的作用相同。

<dt>僅IE6不識别,屏蔽IE6</dt>

<dd></dd>

select { display :none;}

這裡主要是通過CSS注釋分開一個屬性與值,注釋在冒号前。

<dt>僅IE6與IE5不識别,屏蔽IE6與IE5</dt>

這裡與上面一句不同的是在選擇符與花括号之間多了一個CSS注釋。不屏蔽IE5.5

<dt>僅IE5不識别,屏蔽IE5</dt>

select {…}

這一句是在上一句中去掉了屬性區的注釋。隻有IE5不識别,IE5.5可以識别。

<dt>盒模型解決方法</dt>

selct {width:IE5.x寬度; voice-family :"\"}\""; voice-family:inherit; width:正确寬度;}

盒模型的清除方法不是通過!important來處理的。這點要明确。

<dt>清除浮動</dt>

select:after {content:"."; display:block; height:0; clear:both; visibility:hidden;}

在Firefox中,當子級都為浮動時,那麼父級的高度就無法完全的包住整個子級,那麼這時用這個清除浮動的HACK來對父級做一次定義,那麼就可以解決這個問題。

<dt>截字省略号</dt>

select { -o-text-overflow:ellipsis; text-overflow:ellipsis; white-space:nowrap; overflow:hidden; }

這個是在越出長度後會自行的截掉多出部分的文字,并以省略号結尾,很好的一個技術。隻是目前Firefox并不支援。

<dt>隻有Opera識别</dt>

<dd>@media all and (min-width: 0px){ select {……} }</dd>

針對Opera浏覽器做單獨的設定。

以上都是寫CSS中的一些HACK,這些都是用來解決局部的相容性問題,如果希望把相容性的内容也分離出來,不妨試一下下面的幾種過濾器。這些過濾器有的是寫在CSS中通過過濾器導入特别的樣式,也有的是寫在HTML中的通過條件來連結或是導入需要的更新檔樣式。

<dt>IE5.x的過濾器,隻有IE5.x可見</dt>

<dd>@media tty {</dd>

i{content:"\";}} @import 'ie5win.css';

<dt>IE5/MAC的過濾器,一般用不着</dt>

<dt>IE的if條件Hack</dt>

<dd>&lt;!--[if IE]&gt; Only IE &lt;![endif]--&gt;</dd>

所有的IE可識别

&lt;!--[if IE 5.0]&gt; Only IE 5.0 &lt;![endif]--&gt;

隻有IE5.0可以識别

&lt;!--[if gt IE 5.0]&gt; Only IE 5.0+ &lt;![endif]--&gt;

IE5.0包換IE5.5都可以識别

&lt;!--[if lt IE 6]&gt; Only IE 6- &lt;![endif]--&gt;

僅IE6可識别

&lt;!--[if gte IE 6]&gt; Only IE 6/+ &lt;![endif]--&gt;

IE6以及IE6以下的IE5.x都可識别

&lt;!--[if lte IE 7]&gt; Only IE 7/- &lt;![endif]--&gt;

僅IE7可識别

以上内容可能并不全面,歡迎大家能和我一起把這些技巧都彙總起來,為以後工作的查詢提供一個友善,同時在這裡感謝那些研究出這些HACK的作者們。

本文轉自 netcorner 部落格園部落格,原文連結:http://www.cnblogs.com/netcorner/archive/2007/12/27/2912234.html  ,如需轉載請自行聯系原作者