DIV CSS網(wǎng)頁布局學(xué)習(xí)中容易出現(xiàn)的問題匯總_Web標(biāo)準(zhǔn)教程
應(yīng)用Div CSS網(wǎng)頁布局,制作符合web標(biāo)準(zhǔn)的網(wǎng)站,輕易出現(xiàn)的一些問題。
現(xiàn)在總結(jié)一下,以便大家能夠看到明白問題出在那里。
一、CSS校驗的問題
我們設(shè)計的網(wǎng)頁,都希望符合XHTML標(biāo)準(zhǔn),CSS通過W3C的校驗。有些未通過CSS2.0校驗,主要校驗錯誤都是:“Line : 0 font-family: 建議你指定一個種類族科作為最后的選擇”
W3C建議字體定義的時候,最后以一個類別的字體結(jié)束,而不要以單獨某個字體結(jié)束。例如"sans-serif"就可以保證在不同操作系統(tǒng)下,網(wǎng)頁字體都能被顯示。
雖然多數(shù)人都在body標(biāo)簽上定義了"sans-serif",但在其它的id或class中再次定義字體時漏了sans-serif,被認(rèn)為校驗不通過。這個錯誤不是很嚴(yán)重,只要稍加注重就可以避免。
二、CSS的書寫建議
給CSS文件加注釋。注釋會為你今后的維護(hù)帶來方便,建議盡可能給CSS文件加注釋,不要擔(dān)心增加少量的字節(jié)。 盡量簡寫CSS語法。比如顏色值"#FFFFFF"可以簡寫成"#FFF";"padding-top:30px;Padding-right:0;padding-bottom:10px;padding-left:2 0px"可以簡寫為"padding:30px 0 10px 20px;"。在定義技巧上有更多的節(jié)省技巧,隨著對CSS應(yīng)用的熟練,你會不斷發(fā)現(xiàn)更好的辦法。
三、XHTML校驗的問題
往往大家對CSS的校驗比較注重,但在XHTML符合標(biāo)準(zhǔn)方面有點忽視,出現(xiàn)很多低級錯誤。主要問題羅列如下:
◎target="_blank",這個語法在HTML4.0里是正確的,在XHTML1.0里是不答應(yīng)使用的。解決的辦法之一是寫成target="new",另外一個辦法是用js處理所有的target;
◎樣式表最好不要內(nèi)嵌,將樣式表文件獨立出來易于維護(hù)。假如內(nèi)嵌<style>一定要寫成<style type="text/css">,其中的type不能忽略,否則XHTML無法判定你的style作用在什么方面。
◎<br>必須寫成<br />,XHTML要求所有的標(biāo)簽必須關(guān)閉,不成對的標(biāo)簽直接在后面加" /"。
◎重復(fù)使用同一ID。一個ID在XHTML中只能使用1次,假如需要多次引用樣式,應(yīng)該使用class。
◎Flash的嵌入方法錯誤。<embed>最早是Netscape的私有標(biāo)簽,即使后來為IE所支持,但始終沒有被W3C承認(rèn),在HTML4.0沒有<embed>這個標(biāo)簽。W3C主張的是采用<object>標(biāo)簽。為了解決不同瀏覽器的兼容,有一個變通的解決方法是2個標(biāo)簽都采用。
完整的示例代碼如下(flash背景為透明):
| 以下為引用的內(nèi)容: <object classid="clsid:27CDB6E-AE6D-11cf-96B8-444553540000" codebase= "http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="300" height="100"> <param name="quality" value="high"> <param name="wmode" value="transparent"> <param name="SRC" value="test.swf"> <embed src="test.swf" wmode="transparent" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="300" height="100"> </embed> </object> |
但直接寫在XHTML中依然不可以,我們現(xiàn)在只能通過把上面代碼寫在flash.js文件里,然后再調(diào)用來騙過校驗。
<script type="text/javascript" src="flash.js"></script>
關(guān)于flash是否符合標(biāo)準(zhǔn),是一個存在爭議的問題。
◎類似id=header class=title代碼都應(yīng)該寫成id="header" class="title"。給屬性值加引號是最XHTML基本的語法規(guī)則。
四、兼容的問題
有些網(wǎng)站在IE6.0、Mozilla Firefox1.0、Opera 7.12中瀏覽發(fā)生變形和錯位。
在IE里居中,但Mozilla里沒有。在IE中設(shè)置body {TEXT-ALIGN: center;}就已經(jīng)可以居中了,但在Mozilla中必須對需要居中的層再加入以下樣式設(shè)置:MARGIN-RIGHT: auto;MARGIN-LEFT: auto;
超出寬度。在Mozilla里看正常的頁面,在IE里因為超出寬度而變形,并排的層移到下面去了。這個情況是因為IE和Mozilla對盒模型解釋不同造成的,有很多解決辦法,比如"!important"方法。
web標(biāo)準(zhǔn)和CSS布局已經(jīng)被越來越多的設(shè)計師了解和把握。CSS布局經(jīng)過一段時間的消化理解和應(yīng)用,會有更多技術(shù)美觀兼顧的網(wǎng)頁涌現(xiàn)。
- Web標(biāo)準(zhǔn):需要正確的使用H1~ H6標(biāo)簽
- 五個WEB標(biāo)準(zhǔn)中必須注意的地方
- 做到結(jié)構(gòu)(XHTML),表現(xiàn)(CSS),行為(JavaScript)的分離
- CSS標(biāo)準(zhǔn):HTML標(biāo)簽元素的關(guān)閉
- Web標(biāo)準(zhǔn)之路 勿使用W3C廢棄的元素
- CSS布局 聲明文檔類型描述(DTD)
- DIV CSS\讓搜索引擎蜘蛛不再累
- 用XHTML+CSS創(chuàng)建基于Web標(biāo)準(zhǔn)的網(wǎng)頁
- XHTML+CSS創(chuàng)建基于Web標(biāo)準(zhǔn)的網(wǎng)站
- DIV+CSS對SEO的幫助
- 淺析什么是Web標(biāo)準(zhǔn) 及其前景
- CSSer新手寄語:開始標(biāo)準(zhǔn)之路
Web標(biāo)準(zhǔn)教程Rss訂閱Div+Css教程搜索
Web標(biāo)準(zhǔn)教程推薦
- CSS調(diào)試必備:IE7與IE8共存!
- WEB標(biāo)準(zhǔn):target 屬性怎么用 JS 來控制?
- CSS實現(xiàn)當(dāng)前頁的滑動門菜單的效果方法
- CSS中級教程 組合與嵌套
- 并沒有WEB標(biāo)準(zhǔn),有的只是建議
- WEB2.0標(biāo)準(zhǔn)教程:第五天 head區(qū)的其他設(shè)置
- CSS讓表格的溢出內(nèi)容隱藏起來
- 常用的Web標(biāo)準(zhǔn)開發(fā)編輯器
- WebStandards(XHTML CSS)的目的和好處是什么?
- 什么人需要學(xué)習(xí)、適合學(xué)習(xí)WEB標(biāo)準(zhǔn)?
猜你也喜歡看這些
- 解決IE和Mozilla的布局差別的利器:“!important”
- 解決IE6.0、IE5.0、IE5.5差異
- Web頁面優(yōu)化減小頁面對內(nèi)存及CPU的占用
- CSS實例:list-style-type在IE與FF中奇怪的現(xiàn)象解析
- Web標(biāo)準(zhǔn)網(wǎng)站需要考慮的瀏覽器兼容底線
- 如何讓IE ff Opera同時支持Alpha透明?
- CSS調(diào)試工具M(jìn)ultipleIE-IE5IE6IE7多版本共存
- 區(qū)分IE6,IE7和firefox的CSS hack
- 解決IE7以下版本不支持無A狀態(tài)偽類的幾種方法!
- text-overflow:ellipsis非IE的瀏覽器的另類應(yīng)用!
- 相關(guān)鏈接:
- 教程說明:
Web標(biāo)準(zhǔn)教程-DIV CSS網(wǎng)頁布局學(xué)習(xí)中容易出現(xiàn)的問題匯總
。