WEB2.0標(biāo)準(zhǔn)教程:如何應(yīng)用WEB標(biāo)準(zhǔn)改善現(xiàn)有網(wǎng)站?_Div+CSS教程
教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!
我們大部分的設(shè)計(jì)師依舊在采用傳統(tǒng)的表格布局、表現(xiàn)與結(jié)構(gòu)混雜在一起的方式來(lái)建立網(wǎng)站。學(xué)習(xí)使用XHTML CSS的方法需要一個(gè)過(guò)程,使現(xiàn)有網(wǎng)站符合網(wǎng)站標(biāo)準(zhǔn)也不可能一步到位。最好的方法是循序漸進(jìn),分階段來(lái)逐步達(dá)到完全符合網(wǎng)站標(biāo)準(zhǔn)的目標(biāo)。假如你是新手,或者對(duì)代碼不是很熟悉,也可以采用遵循標(biāo)準(zhǔn)的編輯工具,例如Dreamweaver MX 2004,它是目前支持CSS標(biāo)準(zhǔn)最完善的工具。
1.初級(jí)改善
為頁(yè)面添加正確的DOCTYPE
很多設(shè)計(jì)師和開(kāi)發(fā)者都不知道什么是DOCTYPE,DOCTYPE有什么用。DOCTYPE是document type的簡(jiǎn)寫(xiě)。主要用來(lái)說(shuō)明你用的XHTML或者HTML是什么版本。瀏覽器根據(jù)你DOCTYPE定義的DTD(文檔類型定義)來(lái)解釋頁(yè)面代碼。所以,假如你不注重設(shè)置了錯(cuò)誤的DOCTYPE,結(jié)果會(huì)讓你大吃一驚。XHTML1.0提供了三種DOCTYPE可選擇:
(1)過(guò)渡型(Transitional )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
(2)嚴(yán)格型(Strict )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
(3)框架型(Frameset )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
對(duì)于我們初級(jí)改善來(lái)說(shuō),只要選用過(guò)渡型的聲明就可以了。它依然可以兼容你的表格布局、表現(xiàn)標(biāo)識(shí)等,不至于讓你覺(jué)得變化太大,難以把握。
Tip:你懶得輸入上面過(guò)渡型代碼的話,可以訪問(wèn)http://www.macromedia.com/網(wǎng)站的首頁(yè),然后查看源代碼,把head區(qū)同樣的代碼拷貝粘貼就可以了。
設(shè)定一個(gè)名字空間(Namespace)
直接在DOCTYPE聲明后面添加如下代碼:
<html XMLns="http://www.w3.org/1999/xhtml" >
一個(gè)namespace是收集元素類型和屬性名字的一個(gè)具體的DTD,namespace聲明答應(yīng)你通過(guò)一個(gè)在線地址指向來(lái)識(shí)別你的namespace。只要照樣輸入代碼就可以。
聲明你的編碼語(yǔ)言
為了被瀏覽器正確解釋和通過(guò)標(biāo)識(shí)校驗(yàn),所有的XHTML文檔都必須聲明它們所使用的編碼語(yǔ)言。代碼如下:
<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
這里聲明的編碼語(yǔ)言是簡(jiǎn)體中文GB2312,你假如需要制作繁體內(nèi)容,可以定義為BIG5。
用小寫(xiě)字母書(shū)寫(xiě)所有的標(biāo)簽
XML對(duì)大小寫(xiě)是敏感的,所以,XHTML也是大小寫(xiě)有區(qū)別的。所有的XHTML元素和屬性的名字都必須使用小寫(xiě)。否則你的文檔將被W3C校驗(yàn)認(rèn)為是無(wú)效的。例如下面的代碼是不正確的:
<TITLE>公司簡(jiǎn)介</TITLE>
正確的寫(xiě)法是:
<title>公司簡(jiǎn)介</title> 同樣的,<P>改成<p>,<B>改成<b>等等。
這步轉(zhuǎn)換很簡(jiǎn)單。
為圖片添加 alt 屬性
為所有圖片添加alt屬性。alt屬性指定了當(dāng)圖片不能顯示的時(shí)候就顯示供替換文本,這樣做對(duì)正常用戶可有可無(wú),但對(duì)純文本瀏覽器和使用屏幕閱讀機(jī)的用戶來(lái)說(shuō)是至關(guān)重要的。只有添加了alt屬性,代碼才會(huì)被W3C正確性校驗(yàn)通過(guò)。注重的是我們要添加有意義的alt屬性,象下面這樣的寫(xiě)法毫無(wú)意義:
<img src="logo_unc_120x30.gif" alt="logo_unc_120x30.gif">
正確的寫(xiě)法:
<img src="logo_unc_120x30.gif" alt="UNC公司標(biāo)志,點(diǎn)擊返回首頁(yè)">
給所有屬性值加引號(hào)
在HTML中,你可以不需要給屬性值加引號(hào),但是在XHTML中,它們必須被加引號(hào)。
例:height="100",而不能是height=100。
關(guān)閉所有的標(biāo)簽
在XHTML中,每一個(gè)打開(kāi)的標(biāo)簽都必須關(guān)閉。就象這樣:
<p>每一個(gè)打開(kāi)的標(biāo)簽都必須關(guān)閉。</p> <b>HTML可以接受不關(guān)閉的標(biāo),XHTML就不可以。</b>
這個(gè)規(guī)則可以避免HTML的混亂和麻煩。舉例來(lái)說(shuō):假如你不關(guān)閉圖像標(biāo)簽,在一些瀏覽器中就可能出現(xiàn)CSS顯示問(wèn)題。用這種方法能確保頁(yè)面和你設(shè)計(jì)的一樣顯示。需要說(shuō)明的是:空標(biāo)簽也要關(guān)閉,在標(biāo)簽尾部使用一個(gè)正斜杠"/"來(lái)關(guān)閉它們自己。例如:
<br /> <img src="webstandards.gif" />
經(jīng)過(guò)上述七個(gè)規(guī)則處理后,頁(yè)面就基本符合XHTML1.0的要求。但我們還需要校驗(yàn)一下是否真的符合標(biāo)準(zhǔn)了。我們可以利用W3C提供免費(fèi)校驗(yàn)服務(wù)(http://validator.w3.org/)。發(fā)現(xiàn)錯(cuò)誤后逐個(gè)修改。在后面的資源列表中我們也提供了其他校驗(yàn)服務(wù)和對(duì)校驗(yàn)進(jìn)行指導(dǎo)的網(wǎng)址,可以作為W3C校驗(yàn)的補(bǔ)充。當(dāng)最后通過(guò)了XHTML驗(yàn)證,恭喜你已經(jīng)向網(wǎng)站標(biāo)準(zhǔn)邁出了一大步。不是想象中的那么難吧!
2.中級(jí)改善
接下來(lái)我們的改善主要在結(jié)構(gòu)和表現(xiàn)相分離上,這一步不象第一步那么輕易實(shí)現(xiàn),我們需要觀念上的轉(zhuǎn)變,以及對(duì)CSS2技術(shù)的學(xué)習(xí)和運(yùn)用。但學(xué)習(xí)任何新知識(shí)都需要花點(diǎn)時(shí)間的,不是嗎?訣竅在于邊做邊學(xué)。假如你一直采用表格布局,根本沒(méi)用過(guò) CSS,也不必急于跟表格布局說(shuō)再見(jiàn),你可以先用樣式表代替 font 標(biāo)簽。隨著你學(xué)到的越多,你能做的就越多。好,一起來(lái)看看我們需要做哪些事:
用CSS定義元素外觀
我們?cè)趯?xiě)標(biāo)識(shí)時(shí)已經(jīng)養(yǎng)成習(xí)慣,當(dāng)希望字體大點(diǎn)就用<h1>,希望在前面加個(gè)點(diǎn)符號(hào)就用<li>。我們總是想<h1>的意思是大的,<li>的意思是圓點(diǎn),<b>的意思是“加粗文本”。而實(shí)際上, <h1>能變成你想要的任何樣子,通過(guò)CSS,<h1>能變成小的字體,<p>文本能夠變成巨大的、粗體的,<li>能夠變成一張圖片等等。我們不能強(qiáng)迫用結(jié)構(gòu)元素實(shí)現(xiàn)表現(xiàn)效果,我們應(yīng)該使用CSS來(lái)確定那些元素的外觀。例如,我們可以使原來(lái)默認(rèn)的6級(jí)標(biāo)題可以看起來(lái)大小一樣:
h1, h2, h3, h4, h5, h6{ font-family: 宋體, serif; font-size: 12px; }
用結(jié)構(gòu)化元素代替無(wú)意義的垃圾
許多人可能從來(lái)都不知道HTML和XHTML元素設(shè)計(jì)本意是用來(lái)表達(dá)結(jié)構(gòu)的。我們很多人已經(jīng)習(xí)慣用元素來(lái)控制表現(xiàn),而不是結(jié)構(gòu)。例如,一段列表內(nèi)容可能會(huì)使用下面這樣的標(biāo)識(shí):
句子一<br /> 句子二<br /> 句子三<br />
假如我們采用一個(gè)無(wú)序列表代替會(huì)更好:
<ul> <li>句子一</li> <li>句子二</li> <li>句子三</li> </ul>
你或許會(huì)說(shuō)“但是<li>顯示的是一個(gè)圓點(diǎn),我不想用圓點(diǎn)”。事實(shí)上,CSS沒(méi)有設(shè)定元素看起來(lái)是什么樣子,你完全可以用CSS關(guān)掉圓點(diǎn)。
給每個(gè)表格和表單加上id
給表格或表單賦予一個(gè)唯一的、結(jié)構(gòu)的標(biāo)記,例如
<table id="menu">
接下來(lái),在書(shū)寫(xiě)樣式表的時(shí)候,你就可以創(chuàng)建一個(gè)“menu”的選擇器,并且關(guān)聯(lián)一個(gè)CSS規(guī)則,用來(lái)告訴表格單元、文本標(biāo)簽和所有其他元素怎么去顯示。這樣,不需要對(duì)每個(gè)<td>標(biāo)簽附帶一些多余的、占用帶寬的表現(xiàn)層的高、寬、對(duì)齊和背景顏色等等屬性。只需要一個(gè)附著的標(biāo)記(標(biāo)記“menu”的id標(biāo)記),你就可以在一個(gè)分離的樣式表內(nèi)為干凈的、緊湊的代碼標(biāo)記進(jìn)行非凡的表現(xiàn)層處理。
中級(jí)改善我們這里先列主要的三點(diǎn),但其中包含的內(nèi)容和知識(shí)點(diǎn)非常多,需要我們逐步學(xué)習(xí)和把握,直到最后實(shí)現(xiàn)完全采用CSS而不才用任何表格實(shí)現(xiàn)布局。
1.初級(jí)改善
為頁(yè)面添加正確的DOCTYPE
很多設(shè)計(jì)師和開(kāi)發(fā)者都不知道什么是DOCTYPE,DOCTYPE有什么用。DOCTYPE是document type的簡(jiǎn)寫(xiě)。主要用來(lái)說(shuō)明你用的XHTML或者HTML是什么版本。瀏覽器根據(jù)你DOCTYPE定義的DTD(文檔類型定義)來(lái)解釋頁(yè)面代碼。所以,假如你不注重設(shè)置了錯(cuò)誤的DOCTYPE,結(jié)果會(huì)讓你大吃一驚。XHTML1.0提供了三種DOCTYPE可選擇:
(1)過(guò)渡型(Transitional )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
(2)嚴(yán)格型(Strict )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
(3)框架型(Frameset )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
對(duì)于我們初級(jí)改善來(lái)說(shuō),只要選用過(guò)渡型的聲明就可以了。它依然可以兼容你的表格布局、表現(xiàn)標(biāo)識(shí)等,不至于讓你覺(jué)得變化太大,難以把握。
Tip:你懶得輸入上面過(guò)渡型代碼的話,可以訪問(wèn)http://www.macromedia.com/網(wǎng)站的首頁(yè),然后查看源代碼,把head區(qū)同樣的代碼拷貝粘貼就可以了。
設(shè)定一個(gè)名字空間(Namespace)
直接在DOCTYPE聲明后面添加如下代碼:
<html XMLns="http://www.w3.org/1999/xhtml" >
一個(gè)namespace是收集元素類型和屬性名字的一個(gè)具體的DTD,namespace聲明答應(yīng)你通過(guò)一個(gè)在線地址指向來(lái)識(shí)別你的namespace。只要照樣輸入代碼就可以。
聲明你的編碼語(yǔ)言
為了被瀏覽器正確解釋和通過(guò)標(biāo)識(shí)校驗(yàn),所有的XHTML文檔都必須聲明它們所使用的編碼語(yǔ)言。代碼如下:
<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
這里聲明的編碼語(yǔ)言是簡(jiǎn)體中文GB2312,你假如需要制作繁體內(nèi)容,可以定義為BIG5。
用小寫(xiě)字母書(shū)寫(xiě)所有的標(biāo)簽
XML對(duì)大小寫(xiě)是敏感的,所以,XHTML也是大小寫(xiě)有區(qū)別的。所有的XHTML元素和屬性的名字都必須使用小寫(xiě)。否則你的文檔將被W3C校驗(yàn)認(rèn)為是無(wú)效的。例如下面的代碼是不正確的:
<TITLE>公司簡(jiǎn)介</TITLE>
正確的寫(xiě)法是:
<title>公司簡(jiǎn)介</title> 同樣的,<P>改成<p>,<B>改成<b>等等。
這步轉(zhuǎn)換很簡(jiǎn)單。
為圖片添加 alt 屬性
為所有圖片添加alt屬性。alt屬性指定了當(dāng)圖片不能顯示的時(shí)候就顯示供替換文本,這樣做對(duì)正常用戶可有可無(wú),但對(duì)純文本瀏覽器和使用屏幕閱讀機(jī)的用戶來(lái)說(shuō)是至關(guān)重要的。只有添加了alt屬性,代碼才會(huì)被W3C正確性校驗(yàn)通過(guò)。注重的是我們要添加有意義的alt屬性,象下面這樣的寫(xiě)法毫無(wú)意義:
<img src="logo_unc_120x30.gif" alt="logo_unc_120x30.gif">
正確的寫(xiě)法:
<img src="logo_unc_120x30.gif" alt="UNC公司標(biāo)志,點(diǎn)擊返回首頁(yè)">
給所有屬性值加引號(hào)
在HTML中,你可以不需要給屬性值加引號(hào),但是在XHTML中,它們必須被加引號(hào)。
例:height="100",而不能是height=100。
關(guān)閉所有的標(biāo)簽
在XHTML中,每一個(gè)打開(kāi)的標(biāo)簽都必須關(guān)閉。就象這樣:
<p>每一個(gè)打開(kāi)的標(biāo)簽都必須關(guān)閉。</p> <b>HTML可以接受不關(guān)閉的標(biāo),XHTML就不可以。</b>
這個(gè)規(guī)則可以避免HTML的混亂和麻煩。舉例來(lái)說(shuō):假如你不關(guān)閉圖像標(biāo)簽,在一些瀏覽器中就可能出現(xiàn)CSS顯示問(wèn)題。用這種方法能確保頁(yè)面和你設(shè)計(jì)的一樣顯示。需要說(shuō)明的是:空標(biāo)簽也要關(guān)閉,在標(biāo)簽尾部使用一個(gè)正斜杠"/"來(lái)關(guān)閉它們自己。例如:
<br /> <img src="webstandards.gif" />
經(jīng)過(guò)上述七個(gè)規(guī)則處理后,頁(yè)面就基本符合XHTML1.0的要求。但我們還需要校驗(yàn)一下是否真的符合標(biāo)準(zhǔn)了。我們可以利用W3C提供免費(fèi)校驗(yàn)服務(wù)(http://validator.w3.org/)。發(fā)現(xiàn)錯(cuò)誤后逐個(gè)修改。在后面的資源列表中我們也提供了其他校驗(yàn)服務(wù)和對(duì)校驗(yàn)進(jìn)行指導(dǎo)的網(wǎng)址,可以作為W3C校驗(yàn)的補(bǔ)充。當(dāng)最后通過(guò)了XHTML驗(yàn)證,恭喜你已經(jīng)向網(wǎng)站標(biāo)準(zhǔn)邁出了一大步。不是想象中的那么難吧!
2.中級(jí)改善
接下來(lái)我們的改善主要在結(jié)構(gòu)和表現(xiàn)相分離上,這一步不象第一步那么輕易實(shí)現(xiàn),我們需要觀念上的轉(zhuǎn)變,以及對(duì)CSS2技術(shù)的學(xué)習(xí)和運(yùn)用。但學(xué)習(xí)任何新知識(shí)都需要花點(diǎn)時(shí)間的,不是嗎?訣竅在于邊做邊學(xué)。假如你一直采用表格布局,根本沒(méi)用過(guò) CSS,也不必急于跟表格布局說(shuō)再見(jiàn),你可以先用樣式表代替 font 標(biāo)簽。隨著你學(xué)到的越多,你能做的就越多。好,一起來(lái)看看我們需要做哪些事:
用CSS定義元素外觀
我們?cè)趯?xiě)標(biāo)識(shí)時(shí)已經(jīng)養(yǎng)成習(xí)慣,當(dāng)希望字體大點(diǎn)就用<h1>,希望在前面加個(gè)點(diǎn)符號(hào)就用<li>。我們總是想<h1>的意思是大的,<li>的意思是圓點(diǎn),<b>的意思是“加粗文本”。而實(shí)際上, <h1>能變成你想要的任何樣子,通過(guò)CSS,<h1>能變成小的字體,<p>文本能夠變成巨大的、粗體的,<li>能夠變成一張圖片等等。我們不能強(qiáng)迫用結(jié)構(gòu)元素實(shí)現(xiàn)表現(xiàn)效果,我們應(yīng)該使用CSS來(lái)確定那些元素的外觀。例如,我們可以使原來(lái)默認(rèn)的6級(jí)標(biāo)題可以看起來(lái)大小一樣:
h1, h2, h3, h4, h5, h6{ font-family: 宋體, serif; font-size: 12px; }
用結(jié)構(gòu)化元素代替無(wú)意義的垃圾
許多人可能從來(lái)都不知道HTML和XHTML元素設(shè)計(jì)本意是用來(lái)表達(dá)結(jié)構(gòu)的。我們很多人已經(jīng)習(xí)慣用元素來(lái)控制表現(xiàn),而不是結(jié)構(gòu)。例如,一段列表內(nèi)容可能會(huì)使用下面這樣的標(biāo)識(shí):
句子一<br /> 句子二<br /> 句子三<br />
假如我們采用一個(gè)無(wú)序列表代替會(huì)更好:
<ul> <li>句子一</li> <li>句子二</li> <li>句子三</li> </ul>
你或許會(huì)說(shuō)“但是<li>顯示的是一個(gè)圓點(diǎn),我不想用圓點(diǎn)”。事實(shí)上,CSS沒(méi)有設(shè)定元素看起來(lái)是什么樣子,你完全可以用CSS關(guān)掉圓點(diǎn)。
給每個(gè)表格和表單加上id
給表格或表單賦予一個(gè)唯一的、結(jié)構(gòu)的標(biāo)記,例如
<table id="menu">
接下來(lái),在書(shū)寫(xiě)樣式表的時(shí)候,你就可以創(chuàng)建一個(gè)“menu”的選擇器,并且關(guān)聯(lián)一個(gè)CSS規(guī)則,用來(lái)告訴表格單元、文本標(biāo)簽和所有其他元素怎么去顯示。這樣,不需要對(duì)每個(gè)<td>標(biāo)簽附帶一些多余的、占用帶寬的表現(xiàn)層的高、寬、對(duì)齊和背景顏色等等屬性。只需要一個(gè)附著的標(biāo)記(標(biāo)記“menu”的id標(biāo)記),你就可以在一個(gè)分離的樣式表內(nèi)為干凈的、緊湊的代碼標(biāo)記進(jìn)行非凡的表現(xiàn)層處理。
中級(jí)改善我們這里先列主要的三點(diǎn),但其中包含的內(nèi)容和知識(shí)點(diǎn)非常多,需要我們逐步學(xué)習(xí)和把握,直到最后實(shí)現(xiàn)完全采用CSS而不才用任何表格實(shí)現(xiàn)布局。
相關(guān)Div+CSS教程:
- DIV+CSS設(shè)計(jì)的誤區(qū)
- CSS基礎(chǔ):常用CSS英文字體介紹
- IE6和IE7中border邊框斷線現(xiàn)象
- border:none;與border:0;的有什么不同?
- div+css下js對(duì)聯(lián)廣告不隨屏幕滾動(dòng)的解決方法
- HTML元素的ID和Name屬性的區(qū)別
- divcss教程:深入了解css的行高Line Height屬性
- CSS文檔流,塊級(jí)元素和內(nèi)聯(lián)元素
- 5個(gè)你該知道的CSS3新技術(shù)
- 用正則表達(dá)式替換a標(biāo)記href值
- 30個(gè)優(yōu)秀的CSS導(dǎo)航和按鈕設(shè)計(jì)教程
- css中px和em有什么區(qū)別
Div+CSS教程Rss訂閱Div+Css教程搜索
Div+CSS教程推薦
- 正確的使用margin:0auto與body{text-align:center;}實(shí)現(xiàn)元素居中
- 如何用CSS設(shè)置下拉列表sel
- IE對(duì)CSS的渲染引擎hasLayout
- 關(guān)于條件注釋的幾個(gè)實(shí)例代碼
- dreamweaver套用源格式,將混亂無(wú)序的代碼變得整潔
- 實(shí)現(xiàn)CSS網(wǎng)頁(yè)布局的簡(jiǎn)單原理
- CSS文檔流,塊級(jí)元素和內(nèi)聯(lián)元素
- DivCSS實(shí)例:讓頁(yè)腳保持在未滿屏頁(yè)面的底部
- 網(wǎng)頁(yè)中可以豎寫(xiě)文字、象古代書(shū)籍那樣排版嗎?
- CSS 瀏覽器的等寬空格
猜你也喜歡看這些
- DIV CSS布局入門(mén)示例(一)頁(yè)面布局與規(guī)劃
- DIV CSS JS仿kijiji導(dǎo)航條
- 用css網(wǎng)站布局之十步實(shí)錄!(一)
- 用css網(wǎng)站布局之十步實(shí)錄!(三)
- DivCSS布局實(shí)例用dldtdd來(lái)制作列表
- CSS實(shí)例:如何讓無(wú)空格的長(zhǎng)字符在IE和FF下面實(shí)現(xiàn)自動(dòng)換行?
- DOV CSS表單:超炫的單選框與復(fù)選框效果!-Adam
- CSS網(wǎng)站風(fēng)格設(shè)計(jì)實(shí)例HuDong123
- DivCSS布局實(shí)例:三行單列上下固定高度中間自適應(yīng)
- CSS布局中常用的CSS圖像置換、圖片替代的方法舉例
- 相關(guān)鏈接:
復(fù)制本頁(yè)鏈接| 搜索WEB2.0標(biāo)準(zhǔn)教程:如何應(yīng)用WEB標(biāo)準(zhǔn)改善現(xiàn)有網(wǎng)站?
- 教程說(shuō)明:
Div+CSS教程-WEB2.0標(biāo)準(zhǔn)教程:如何應(yīng)用WEB標(biāo)準(zhǔn)改善現(xiàn)有網(wǎng)站?。