自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

CSS網(wǎng)頁(yè)布局排查錯(cuò)誤六大方法

開(kāi)發(fā) 前端
本文向大家介紹一下CSS網(wǎng)頁(yè)布局排查錯(cuò)誤的方法,選擇一個(gè)先進(jìn)的瀏覽器進(jìn)行測(cè)試是明智的做法,而不要使用IE6作為唯一的測(cè)試瀏覽器,因?yàn)镮E6的問(wèn)題是最多的。

你對(duì)CSS網(wǎng)頁(yè)布局排查錯(cuò)誤的方法是否了解,這里和大家分享一下,如果在先進(jìn)的瀏覽器內(nèi)測(cè)試是正確的,而在IE內(nèi)有問(wèn)題,那基本上可以判定是IE的問(wèn)題。

CSS網(wǎng)頁(yè)布局排查錯(cuò)誤的方法

雖然瀏覽器可能存在著很多Bug,但是并不是與自己感覺(jué)不一樣的時(shí)候就是出現(xiàn)了Bug。產(chǎn)生問(wèn)題的原因可能有很多種,因此制作者需要一定的方法來(lái)排查問(wèn)題。

選擇一個(gè)先進(jìn)的瀏覽器進(jìn)行測(cè)試是明智的做法,例如對(duì)CSS2.1支持比較好的Opera9.2、Firefox2.0或者Safari3.0,而不要使用IE6作為***的測(cè)試瀏覽器,因?yàn)镮E6的問(wèn)題是最多的,這非常不利于制作者(特別是初學(xué)者)理解CSS2.1的規(guī)范與判斷瀏覽器的表現(xiàn)是否正確。

如果在先進(jìn)的瀏覽器內(nèi)測(cè)試是正確的,而在IE內(nèi)有問(wèn)題,那基本上可以判定是IE的問(wèn)題。

如果在先進(jìn)的瀏覽器內(nèi)的顯示不正確,那么可以先進(jìn)行如下初步判斷:

1.拼寫是否正確

可以使用W3C的校驗(yàn),或者網(wǎng)頁(yè)編輯軟件的校驗(yàn)功能,來(lái)檢查(X)HTML文檔內(nèi)的標(biāo)簽是否配套、嵌套順序是否正確、空標(biāo)簽是否閉合,CSS拼寫是否正確。不正確的嵌套、錯(cuò)誤的拼寫是非常常見(jiàn)的錯(cuò)誤。

提示:現(xiàn)在有很多編輯軟件都可以提供(X)HTML和CSS的校驗(yàn)功能,包括瀏覽器對(duì)CSS屬性是否支持等。例如:Dreamweaver8以上版本,TopStyle等軟件。

提示:Firefox中的附加軟件“Firebug”是一個(gè)非常好用的工具,它不僅可以檢查(X)HTML、CSS和JavaScript是否正確,還可以動(dòng)態(tài)顯示頁(yè)面內(nèi)元素的框和位置,是調(diào)試網(wǎng)頁(yè)很好的輔助插件。讀者可以訪問(wèn)它的官方網(wǎng)站下載:http://www.getfirebug.com/(英文)

2.是否有合適的DTD

在本書的其他章節(jié)里,曾經(jīng)不止一次地強(qiáng)調(diào)過(guò)DOCTYPE的重要性,不同的DOCTYPE直接影響瀏覽器對(duì)于(X)HTML和CSS的解釋。

3.CSS屬性瀏覽器是否支持

雖然現(xiàn)代瀏覽器支持絕大部分的CSS2.1規(guī)范和部分的CSS3規(guī)范,但是在前面的章節(jié)也介紹過(guò),有一些CSS屬性還沒(méi)有被瀏覽器廣泛支持,因此在某個(gè)屬性沒(méi)有生效的時(shí)候,請(qǐng)確定瀏覽器是否支持。

4.隔離問(wèn)題

將有問(wèn)題的地方突出出來(lái),例如給元素加一個(gè)醒目的邊框或者背景顏色。

如果增加了邊框就可以解決問(wèn)題,那么就是邊距重疊的問(wèn)題。

如果增加了背景,但是背景不顯示,那么有可能是特殊性或者浮動(dòng)元素沒(méi)有閉合。

嘗試修改一些屬性,特別是會(huì)觸發(fā)IE的hasLayout的屬性,判斷是否是IE常見(jiàn)的Bug,讀者可以參見(jiàn)[16.4.3瀏覽器常見(jiàn)Bug]一節(jié)。

5.建立基本測(cè)試

如果還不能解決問(wèn)題,則可以復(fù)制問(wèn)題文件,然后刪除多余的(X)HTML,只留下有問(wèn)題的部分。

刪除(X)HTML內(nèi)的注釋問(wèn)題,看問(wèn)題是否會(huì)消失。

刪除元素間的空格,看問(wèn)題是否會(huì)消失。

然后分塊注釋掉樣式表,直到問(wèn)題消失,則剛注釋掉的樣式即為問(wèn)題所在。

6.解決問(wèn)題而不是解決現(xiàn)象

找到問(wèn)題根源的所在并解決它是最終目,而不是為了遷就表現(xiàn)而使用復(fù)雜的Hack來(lái)讓網(wǎng)頁(yè)“看上去很美”。不從根源上解決問(wèn)題,當(dāng)瀏覽器升級(jí)以后,可能會(huì)遇到更多的問(wèn)題。同時(shí),Hack的時(shí)候可能會(huì)造成新的問(wèn)題的出現(xiàn),特別是觸發(fā)或者避免觸發(fā)IE的hasLayout屬性。

換一種思路也許也可以避免問(wèn)題的出現(xiàn),例如將元素的margin屬性取消,改為設(shè)置其父元素的padding屬性。

只有實(shí)在無(wú)法解決的時(shí)候,再使用Hack。
 

【編輯推薦】

  1. 十個(gè)不被IE6支持的實(shí)用CSS屬性
  2. CSS中padding-top和padding-left屬性的區(qū)別
  3. 實(shí)例解析CSS padding 屬性用法
  4. Firefox和IE瀏覽器清除緩存方法揭秘
  5. 實(shí)現(xiàn)IE6、IE7、IE8多版本瀏覽器共存的五種方法

 

 

責(zé)任編輯:佚名 來(lái)源: webjx.com
相關(guān)推薦

2010-08-27 16:03:14

CSS布局

2010-09-09 13:54:06

DIV CSS

2015-06-08 14:08:11

2011-09-28 16:21:21

云安全企業(yè)

2011-09-28 13:38:53

CA云計(jì)算云安全

2009-09-15 16:53:50

2010-09-07 14:14:46

DIV+CSS

2010-03-01 14:13:06

2010-08-16 13:46:20

DIV+CSS

2011-11-04 09:49:15

云計(jì)算云安全

2010-08-31 15:47:25

2012-09-03 14:21:07

2010-09-01 11:29:04

CSS

2011-10-27 09:28:02

存儲(chǔ)器重復(fù)數(shù)據(jù)刪除

2016-03-17 09:46:53

2013-01-07 15:05:09

2010-08-23 15:22:56

CSSfloat

2010-09-03 14:46:46

CSS縮寫CSS

2011-06-16 17:05:54

CSS

2019-01-02 08:30:41

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)