IE6/7實現display:inline-block
有兩種方法,第一種,先聲明該元素display:inline-block,觸發其layout,再在第二條樣式上再聲明為display:inline,如:
代碼如下:
.test{display:inline-block; /*其他樣式...*/}
.test{display:inline;}
第二種方法(推薦),利用IE6/7的Css專有前綴來觸發layout(感覺怎麼有點像js的setTimeout):
代碼如下:
.test{display:inline-block; *zoom: 1; *display: inline;}
IE6雙倍浮動行距
在IE6下,當一個div在另一個div向左浮動,並且帶有margin-left的樣式,那麼這時它的左邊距是樣式定義的雙倍,同理如果是向右浮動和margin-right,效果是一樣的。不過在此後浮動的div的邊距反倒是沒問題的,只是第一個有此問題。
這時,解決的方法是:簡單給該div加個_display:inline;樣式即可
IE6-IE10的css hack
代碼如下:
p{
color: black; /*IE10*/
color: orange ; /*IE8,IE9*/
*color: blue; /*IE6,IE7*/
_color: red; /*IE6*/
}
:root p{
color: yellow ; /*IE9*/
}
IE7/8下PNG圖片背景有黑色的東西
那是因為你使用了濾鏡效果,比如filter:alpha(opacity=100);,把它去掉就可以了
IE7/8下元素無故消失、看不見、點擊不了
在其他浏覽器明明是有東西的,但來到IE7/8就無故消失了。出現這種情況,你試下給該元素添加background:red;或者之前是去掉文字的text-indent:-9999em; font-size:0;的,改為font-size:18px; text-indent:0;,你就會發現消失的元素終於又出現了。對於這種方法,解決方法是,在IE7/8下,給該元素添加背景色。但同時你不想讓該元素可視,那麼就加上 opacity:0; filter:alpha(opacity=0);
IE7/8下樣式載入不完全
那應該是css文件的charset聲明和文件本身的編碼不一致問題,將這個改正一下即可。
暫時先記錄這些吧,以後遇到了再繼續更新,小伙伴們也可以搜集一下,發給我,本文持續更新