應(yīng)用DIV+CSS編碼時易犯的錯誤
CSS+DIV是網(wǎng)站標(biāo)準(zhǔn)(或稱“WEB標(biāo)準(zhǔn)”)中常用的術(shù)語之一,通常為了說明與HTML網(wǎng)頁設(shè)計語言中的表格(table)定位方式的區(qū)別,因為XHTML網(wǎng)站設(shè)計標(biāo)準(zhǔn)中,不再使用表格定位技術(shù),而是采用css+div的方式實現(xiàn)各種定位。應(yīng)用應(yīng)用DIV+CSS編碼時很容易犯一些錯誤。本文列舉了一些常見的錯誤:
1. 檢查HTML元素是否有拼寫錯誤、是否忘記結(jié)束標(biāo)記
即使是老手也經(jīng)常會弄錯div的嵌套關(guān)系。可以用dreamweaver的驗證功能檢查一下有無錯誤。
2. 檢查CSS是否正確
檢查一下有無拼寫錯誤、是否忘記結(jié)尾的 } 等。可以利用CleanCSS來檢查 CSS的拼寫錯誤。CleanCSS本是為CSS減肥的工具,但也能檢查出拼寫錯誤。
3. 確定錯誤發(fā)生的位置
如果錯誤影響了整體布局,則可以逐個刪除div塊,直到刪除某個div塊后顯示恢復(fù)正常,即可確定錯誤發(fā)生的位置。
4. 利用border屬性確定出錯元素的布局特性
使用float屬性布局一不小心就會出錯。這時為元素添加border屬性確定元素邊界,錯誤原因即水落石出。
5. float元素的父元素不能指定clear屬性
MacIE下如果對float的元素的父元素使用clear屬性,周圍的float元素布局就會混亂。這是MacIE的著名的bug,倘若不知道就會走彎路。
6. float元素務(wù)必指定width屬性
很多瀏覽器在顯示未指定width的float元素時會有bug。所以不管float元素的內(nèi)容如何,一定要為其指定width屬性。
另外指定元素時盡量使用em而不是px做單位。
7. float元素不能指定margin和padding等屬性
IE在顯示指定了margin和padding的float元素時有bug。因此不要對float元素指定margin和padding屬性(可以在float元素內(nèi)部嵌套一個div來設(shè)置margin和padding)。也可以使用hack方法為IE指定特別的值。
8. float元素的寬度之和要小于100%
如果float元素的寬度之和正好是100%,某些古老的瀏覽器將不能正常顯示。因此請保證寬度之和小于99%。
9. 是否重設(shè)了默認的樣式?
某些屬性如margin、padding等,不同瀏覽器會有不同的解釋。因此最好在開發(fā)前首先將全體的margin、padding設(shè)置為0、列表樣式設(shè)置為none等。
10. 是否忘記了寫DTD?
如果無論怎樣調(diào)整不同瀏覽器顯示結(jié)果還是不一樣,那么可以檢查一下頁面開頭是不是忘了寫DTD