CSS BUG處理方法大全_CSS教程
教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!
CSS BUG在Mb5u.com介紹過(guò)也很多,也一直困擾著大家,在CSS布局中會(huì)常遇到這樣的問(wèn)題。相信大家對(duì)于常見(jiàn) CSS BUG 的處理已經(jīng)相對(duì)比較熟悉,例如:IE6 Three Pixel Gap(3px bug)、IE5/6 Doubled Float-Margin Bug(雙倍邊距的bug) 等等。但時(shí)常我們也會(huì)碰到復(fù)雜的 CSS BUG 問(wèn)題,所謂“復(fù)雜”實(shí)質(zhì)是指觸發(fā)的條件很復(fù)雜,而“BUG” 也并非指一定是瀏覽器的 BUG 。對(duì)于此類(lèi)問(wèn)題,我們首先要解決的是如何定位到問(wèn)題,只有快速的定位到問(wèn)題,才能更好的解決問(wèn)題。
對(duì)于快速定位,個(gè)人的經(jīng)驗(yàn)處理一般如下(基本可以定位到我在 淘寶 遇到的 90% 以上的復(fù)雜 CSS BUG 問(wèn)題):
一、檢查頁(yè)面的標(biāo)簽是否閉合
不要小看這條,也許折騰了你兩天都沒(méi)有解決的 CSS BUG 問(wèn)題,卻僅僅源于這里。畢竟頁(yè)面的模板一般都是由開(kāi)發(fā)來(lái)嵌套的,而他們很容易犯此類(lèi)問(wèn)題。
快捷提示:可以用 Dreamweaver 打開(kāi)文件檢查,一般沒(méi)有閉合的標(biāo)簽,會(huì)黃色背景高亮。
二、樣式排除法
有些復(fù)雜的頁(yè)面也許加載了 N 個(gè)外鏈 CSS 文件,那么逐個(gè)刪除 CSS 文件,找到 BUG 觸發(fā)的具體 CSS 文件,縮小鎖定的范圍。
對(duì)于剛才鎖定的問(wèn)題 CSS 樣式文件,逐行刪除具體的樣式定義,定位到具體的觸發(fā)樣式定義,甚至是具體的觸發(fā)樣式屬性。
三、模塊確認(rèn)法
有時(shí)候我們也可以從頁(yè)面的 HTML 元素出發(fā)。刪除頁(yè)面中不同的 HTML 模塊,尋找到觸發(fā)問(wèn)題的 HTML 模塊。
四、檢查是否清除浮動(dòng)
其實(shí)有不少的 CSS BUG 問(wèn)題是因?yàn)闆](méi)有清除浮動(dòng)造成的。養(yǎng)成良好的清除浮動(dòng)的習(xí)慣是必要的,推薦使用 無(wú)額外 HTML 標(biāo)簽的清除浮動(dòng)的方法(盡量避免使用 overflow:hidden;zoom:1 的類(lèi)似方法來(lái)清除浮動(dòng),會(huì)有太多的限制性)。
五、檢查 IE 下是否觸發(fā) haslayout
很多的 IE 下復(fù)雜 CSS BUG 都與 IE 特有的 haslayout 息息相關(guān)。熟悉和理解 haslayout 對(duì)于處理復(fù)雜的 CSS BUG 會(huì)事半功倍。推薦閱讀 old9 翻譯的 《On having layout》(如果無(wú)法翻越穿越偉大的 GFW,可閱讀 藍(lán)色上的轉(zhuǎn)帖 )
快捷提示:如果觸發(fā)了 haslayout,IE 的調(diào)試工具Internet Explorer Developer Toolbar中的屬性中將會(huì)顯示 haslayout 值為 -1。
六、邊框背景調(diào)試法
故名思議就是給元素設(shè)置顯眼的邊框或者背景(一般黑色或紅色),進(jìn)行調(diào)試。此方法是最常用的調(diào)試 CSS BUG 的方法之一,對(duì)于復(fù)雜 BUG 依舊適用。經(jīng)濟(jì)實(shí)惠還環(huán)保^^
最后想給大家強(qiáng)調(diào)一點(diǎn)的是,養(yǎng)成良好的書(shū)寫(xiě)習(xí)慣,減少額外標(biāo)簽,盡量語(yǔ)義,符合標(biāo)準(zhǔn),其實(shí)可以為我們減少很多額外的復(fù)雜 CSS BUG,更多的時(shí)候其實(shí)是我們自己給自己制造了麻煩。希望大家遠(yuǎn)離 BUG ,生活越來(lái)越美好。
對(duì)于快速定位,個(gè)人的經(jīng)驗(yàn)處理一般如下(基本可以定位到我在 淘寶 遇到的 90% 以上的復(fù)雜 CSS BUG 問(wèn)題):
一、檢查頁(yè)面的標(biāo)簽是否閉合
不要小看這條,也許折騰了你兩天都沒(méi)有解決的 CSS BUG 問(wèn)題,卻僅僅源于這里。畢竟頁(yè)面的模板一般都是由開(kāi)發(fā)來(lái)嵌套的,而他們很容易犯此類(lèi)問(wèn)題。
快捷提示:可以用 Dreamweaver 打開(kāi)文件檢查,一般沒(méi)有閉合的標(biāo)簽,會(huì)黃色背景高亮。
二、樣式排除法
有些復(fù)雜的頁(yè)面也許加載了 N 個(gè)外鏈 CSS 文件,那么逐個(gè)刪除 CSS 文件,找到 BUG 觸發(fā)的具體 CSS 文件,縮小鎖定的范圍。
對(duì)于剛才鎖定的問(wèn)題 CSS 樣式文件,逐行刪除具體的樣式定義,定位到具體的觸發(fā)樣式定義,甚至是具體的觸發(fā)樣式屬性。
三、模塊確認(rèn)法
有時(shí)候我們也可以從頁(yè)面的 HTML 元素出發(fā)。刪除頁(yè)面中不同的 HTML 模塊,尋找到觸發(fā)問(wèn)題的 HTML 模塊。
四、檢查是否清除浮動(dòng)
其實(shí)有不少的 CSS BUG 問(wèn)題是因?yàn)闆](méi)有清除浮動(dòng)造成的。養(yǎng)成良好的清除浮動(dòng)的習(xí)慣是必要的,推薦使用 無(wú)額外 HTML 標(biāo)簽的清除浮動(dòng)的方法(盡量避免使用 overflow:hidden;zoom:1 的類(lèi)似方法來(lái)清除浮動(dòng),會(huì)有太多的限制性)。
五、檢查 IE 下是否觸發(fā) haslayout
很多的 IE 下復(fù)雜 CSS BUG 都與 IE 特有的 haslayout 息息相關(guān)。熟悉和理解 haslayout 對(duì)于處理復(fù)雜的 CSS BUG 會(huì)事半功倍。推薦閱讀 old9 翻譯的 《On having layout》(如果無(wú)法翻越穿越偉大的 GFW,可閱讀 藍(lán)色上的轉(zhuǎn)帖 )
快捷提示:如果觸發(fā)了 haslayout,IE 的調(diào)試工具Internet Explorer Developer Toolbar中的屬性中將會(huì)顯示 haslayout 值為 -1。
六、邊框背景調(diào)試法
故名思議就是給元素設(shè)置顯眼的邊框或者背景(一般黑色或紅色),進(jìn)行調(diào)試。此方法是最常用的調(diào)試 CSS BUG 的方法之一,對(duì)于復(fù)雜 BUG 依舊適用。經(jīng)濟(jì)實(shí)惠還環(huán)保^^
最后想給大家強(qiáng)調(diào)一點(diǎn)的是,養(yǎng)成良好的書(shū)寫(xiě)習(xí)慣,減少額外標(biāo)簽,盡量語(yǔ)義,符合標(biāo)準(zhǔn),其實(shí)可以為我們減少很多額外的復(fù)雜 CSS BUG,更多的時(shí)候其實(shí)是我們自己給自己制造了麻煩。希望大家遠(yuǎn)離 BUG ,生活越來(lái)越美好。
/所屬分類(lèi):CSS教程/更新時(shí)間:2012-06-18
相關(guān)CSS教程:
CSS教程Rss訂閱Div+Css教程搜索
CSS教程推薦
- CSS教程3、CSS的color顏色[翻譯Htmldog]
- CSS教程16、CSS的偽元素PseudoElements[翻譯Htmldog]
- 論web標(biāo)準(zhǔn)的網(wǎng)頁(yè)制作和符合web標(biāo)準(zhǔn)的網(wǎng)站UI
- CSS教程:合理的減少標(biāo)簽的使用并適度的使用class與id
- CSS學(xué)習(xí)者:2008年不要作浮躁的人
- CSS2.0中的expression應(yīng)用
- CSS初級(jí)教程選擇符屬性和值
- CSS:用overflow代替left截取指定長(zhǎng)度字符串
- CSS網(wǎng)站布局技巧幾則總結(jié)
- 應(yīng)用CSS的page-break-after屬性 實(shí)現(xiàn)WEB頁(yè)面強(qiáng)制分頁(yè)打印
猜你也喜歡看這些
- 相關(guān)鏈接:
- 教程說(shuō)明:
CSS教程-CSS BUG處理方法大全。