一. 設定float後,margin雙倍距離問題
1.加display:inline解決
如:margin-left:10px;
display:inline;
2. ie都能識別*;標準瀏覽器(如ff)不能識別*;
ie6能識別*,但不能識別 !important,
ie7能識別*,也能識別!important;
ff不能識別*,但能識別!important.
如:margin-left:10px !important;margin-left:10px;
注意:!important在前面,而且不能分塊定義,例如
divdiv此時無效。
二、ie6.0下面模式的最少高度是10px 可以再這個樣式裡面加一句 : font-size:1px 這樣就可以解決這個問題了 。
三、 ie6 邊框時有時無,斷斷續續
解決辦法:父元素上新增樣式:zoom:1或者height:100%;
css中zoom:1的作用
相容ie6、ie7、ie8瀏覽器,經常會遇到一些問題,可以使用zoom:1來解決,有如下作用:
觸發ie瀏覽器的haslayout
解決ie下的浮動,margin重疊等一些問題。
比如,本站使用div做一行兩列顯示,html**:
<divclass
="h_mainbox"
>
<
h2>
推薦文章
h2>
<
ulclass
="mainlist"
>
<
li>
<
ahref
="#"
style
="color:#0000ff"
target
="_blank"
>
css庫吧
a>
li>
<
li>
<
ahref
="#"
style
="color:#0000ff"
target
="_blank"
>
原創<
/a>
li>
ul>
div>
css**:
.h_mainbox.h_mainbox h2
.h_mainbox h2
span
.h_mainbox ul
.mainlist
.h_mainbox li
2、樣式排除法
有些複雜的頁面也許載入了 n 個外鏈 css 檔案,那麼逐個刪除 css 檔案,找到 bug 觸發的具體 css 檔案,縮小鎖定的範圍。
對於剛才鎖定的問題 css 樣式檔案,逐行刪除具體的樣式定義,定位到具體的觸發樣式定義,甚至是具體的觸發樣式屬性。
3、模組確認法
有時候我們也可以從頁面的 html 元素出發。刪除頁面中不同的 html 模組,尋找到觸發問題的 html 模組。
4、檢查是否清除浮動
其實有不少的 css bug 問題是因為沒有清除浮動造成的。養成良好的清除浮動的習慣是必要的,推薦使用 無額外 html 標籤的清除浮動的方法(盡量避免使用 overflow:hidden;zoom:1 的類似方法來清除浮動,會有太多的限制性)。
6、邊框背景除錯法
故名思議就是給元素設定顯眼的邊框或者背景(一般黑色或紅色),進行除錯。此方法是最常用的除錯 css bug 的方法之一,對於複雜 bug 依舊適用。經濟實惠還環保^^
最後想強調一點的是,養成良好的書寫習慣,減少額外標籤,盡量語義,符合標準,其實可以為我們減少很多額外的複雜 css bug,更多的時候其實是我們自己給自己製造了麻煩。希望你遠離 bug ,生活越來越美好。
解決IE6 IE8相容的問題
解決ie6 ie8樣式不相容問題 方法一 要在頁面中加入如下http meta tag 只要ie8一讀到這個標籤,它就會自動啟動ie7相容模式,保證頁面完整展示。方法二 針對整個 在iis中加入如下描述符就可以有相同的效果,當然這麼做範圍更廣。配置方法 1.進入iis 右擊 選擇屬性 2.在彈出來的...
IE6不相容問題
一 選擇器相容問題 1.交集選擇器從ie7以上相容 div.special 2.兒子選擇器 ie7開始相容,ie6不相容。3.序選擇器 first child,last child,nth child 1 2n 2 ie8開始相容 選擇器 說ie6 層面相容的 標籤選擇器 id選擇器 類選擇器 後代...
解決IE6 IE7 IE8樣式不相容問題
ie6裡div錯位的問題 採用 float left 的div在ie8 ie7 都沒問題,ie6下卻向下移動,出現空白。這是因為,ie6採用的核心預設把div之間的距離增加了3 5個px,所以,試試是將下移的div的style裡增加 margin left 5px 或者更小。解決ie7 ie8樣式不...