初學Web标準的(de)幾個(gè)誤區(qū)
非常高(gāo)興地(dì)看(kàn)到(dào)很(∞'∑hěn)多(duō)設計(jì)師(shī) •₹₹開(kāi)始關注和(hé)嘗試使用(yòng)web标準制(zhì)作(€←zuò)網頁。但(dàn)從(cóng)網友(yǒu)們的(de)問σ©↔(wèn)題和(hé)制(zhì)作(zuò)中£λ↔♦發現(xiàn)幾個(gè)問(wèn)題,在這(z>♠hè)裡(lǐ)特别提醒一(yī)下(xià):
1.不(bù)是(shì)為(wèi)了(le)通(tōng)γ'過校(xiào)驗才标準化(huà)。
web标準的(de)本意是(shì)實現(xiàn)內(nèi)容(±®結構)和(hé)表現(xiàn)分(fēn)離(lí),就(jiù)是(σσshì)将樣式剝離(lí)出來(lái)放(fβ π>àng)在單獨的(de)css文(wén₹×)件(jiàn)中。這(zhè)樣做(zuò)的(₩∑λ≠de)好(hǎo)處是(shì)可(kě)以分←α(fēn)别處理(lǐ)內(nèi)容和∏≤×≤(hé)表現(xiàn),也(yě)方便搜索和(hé)內(nèi)容的(de ®)再利用(yòng)。
W3C校(xiào)驗僅僅是(shì)幫助你(Ωπ≤÷nǐ)檢查XHTML代碼的(de)書(shū)寫是(shì)否規範,CSβ↓S的(de)屬性是(shì)否都(dōu)在CCS2的(de)λ≈∞規範內(nèi)。代碼的(de)标準化(huà)僅僅♣♠是(shì)第一(yī)步,不(bù)是(shì)說(shuō™ε×)通(tōng)過的(de)校(xiào)驗,我λ的(de)網頁就(jiù)标準化(huà)了<&(le)。我們不(bù)是(shì)為(wèi)了(le)虛名,或者向别ε<人(rén)炫耀:“看(kàn)我的(de)頁面通(t✔>ōng)過了(le)校(xiào)驗”而去(qù)标準化(β♠♥huà),我們的(de)目的(de)是(shì)為(wèi)了(•←λle)使自(zì)己的(de)網頁設計(jì)工(gōng)作(zuò)¥更有(yǒu)效率,為(wèi)了(le)縮小(xφ←iǎo)網頁尺寸,為(wèi)了(le)能(néng)夠在任何浏覽器↔<ε(qì)和(hé)網絡設備中正常浏覽。
請(qǐng)大(dà)家(jiā)♣☆←沉下(xià)心來(lái),仔細研究和(hé)理(lǐ)©$↓解web标準的(de)內(nèi)涵。網絡上(shàng)已經充滿了(le)φ$≤不(bù)要(yào)浮躁和(hé)虛榮,請©↔ ♥(qǐng)不(bù)要(yào)将這(zhè)種風(f♦δ$ēng)氣帶到(dào)web标準應用(yòng)€★中來(lái),這(zhè)樣做(zuò)隻♠會(huì)影(yǐng)響和(hé)損害web标準的(de)推廣。
2.不(bù)要(yào)用(yòng¥∑™ )傳統的(de)表格思維來(lái)套div
“CSS布局就(jiù)是(shì)将原來(lái)用(yòng£λ ≥)table的(de)地(dì)方用(yòπ∑¥ng)div來(lái)替代,原來(lái)是(shì)表格嵌∑™♥•套,現(xiàn)在是(shì)DIV嵌套。”這(€δzhè)種觀點是(shì)錯(cuò)誤的(de)!
請(qǐng)跳(tiào)出原來(lái)表格布局的(≥∏¥de)禁锢,抛棄一(yī)個(gè)td接一(yī)個(g₩≤è)td放(fàng)置圖片和(hé)內(nèi)容的(de ↔)思維方式。我們上(shàng)面說(shuō)過web标準的(de♥™β)目的(de)是(shì)分(fēn)離(lí©∏☆₩)內(nèi)容和(hé)表現(xiàn),你(nǐ)可(k☆☆•ě)以這(zhè)樣思考,頁面裡(lǐ)有(yǒuΩ&£ )的(de)僅僅是(shì)內(nèi)容,沒有(yǒu)修飾的(d→•e)情況下(xià),它看(kàn)上(shàng)去(qù)就₽>π(jiù)是(shì)一(yī)張白(bái)白(bái)的★₩¥(de)頁面,上(shàng)有(yǒu)一(≈¶yī)些(xiē)文(wén)字和(hé☆β)圖片(這(zhè)個(gè)圖片是(shì♥≥)指內(nèi)容中的(de)圖片,是(shì)有 ↑(yǒu)真實意義的(de)圖片)。這(zhè$≥)些(xiē)文(wén)字圖片僅僅是(shì)依次羅列下(xià)來(lá≈∞≥€i),隻有(yǒu)結構,沒有(yǒu)任何樣式。然後加入表現(x™✔<iàn),将所有(yǒu)修飾的(de)圖片作(zuò)為∏♦™(wèi)背景,用(yòng)C SS來(lái)定義每♥>♦一(yī)塊內(nèi)容的(de)位置、字 ©™體(tǐ)、顔色等。
這(zhè)樣制(zhì)作(zuò)的(de)頁面才是(shì)內¥(nèi)容與表現(xiàn)分(fēn)離(lí)的(de)±≠↔♣,就(jiù)是(shì)說(shuō),當你(nǐ)抽掉css↑₩←文(wén)件(jiàn),剩下(xià&α )的(de)就(jiù)是(shì)幹淨的≠ (de)內(nèi)容。這(zhè)樣才能(nén☆←g)在文(wén)本浏覽器(qì)中閱讀(dú),才能(néng)在手機(j× ÷ī)、PDA中閱讀(dú),才能(néng)随時(shí)修改CSS≥γ✘↔實現(xiàn)改版。
3.不(bù)必為(wèi)每塊內(nèi)容都(dōu×')建立一(yī)個(gè)id
有(yǒu)網友(yǒu)抱怨css文(wén)件(jiàn)太大(Ω∞βdà)、太複雜(zá)。仔細看(kàn)他♥β♠(tā)們的(de)代碼,發現(xiàn)原因是(shì)他(tā)們對(¥∏duì)每塊內(nèi)容、甚至每句話(huà)都(dōu)γ→•÷定義一(yī)個(gè)div,建立一(yī)↓β←個(gè)ID。這(zhè)一(yī)方面是(shìβ↑λ)對(duì)樣式表應用(yòng)的(de)不(bù)φ₩≥γ熟悉,另一(yī)方面也(yě)表現(xiàn)出對(£π≠duì)web标準沒有(yǒu)徹底理(lǐ)解。
我們知(zhī)道(dào)內(nè↔∞©↑i)容都(dōu)是(shì)有(yǒu)結構的(de)(如(rσ✘σ ú)果不(bù)明(míng)白(bái),請§™γ(qǐng)閱讀(dú):理(lǐ)解表現(xiàn)和(hé)結構相(x©§iàng)分(fēn)離(lí) ),相(xiàng)同的≈•(de)結構的(de)內(nèi)容我們可(kě)以用(yòng)同一(yī)£&個(gè)樣式來(lái)定義,比如(rú)相(xiàng)同級别的(d↔α↑>e)标題、正文(wén)、圖片。對(duì)于多(duō)次引用☆(yòng)的(de)樣式可(kě)以用(y♥≈®∏òng)class來(lái)定義,不(bù)需∏®≠→要(yào)每個(gè)都(dōu)用(yòng)id;另外(wài)也(y✘Ωě)不(bù)是(shì)說(shuō)一(yī"★↔)定要(yào)用(yòng)<div>,你(π'§nǐ)完全可(kě)以用(yòng)<p>來(lá®®↑i)代替,同樣都(dōu)是(shì)塊級♠¶ 元素,一(yī)樣有(yǒu)盒模型的(de)&★♣•七個(gè)參數(shù),<div>僅僅方便浮動≥ 。
至于僅僅為(wèi)了(le)行(xíng)高(gāεσ'♦o)、間(jiān)距、一(yī)個(gè)修飾圖片而↑≥增加額外(wài)的(de)div,我想随著(♥&δzhe)對(duì)CSS的(de)應用(yòng)和(hé)理(÷₩§lǐ)解,你(nǐ)很(hěn)快(ku↕↕ài)就(jiù)可(kě)以省略掉這(zhè)些§♣≠(xiē)。我們反對(duì)用(yòng)DIV的(de)嵌套取代tabl✔e的(de)嵌套,這(zhè)沒有(yǒu)任何意義,不↑¥(bù)能(néng)體(tǐ)現(xiàn)內(©™↔nèi)容的(de)結構化(huà)。希望大(dà)家(ji<≤>ā)多(duō)研究CSS,寫出最簡練,最有(yǒu)效的(de)樣式表。≈'
4.不(bù)要(yào)因為(wèi)一(yī)點挫折就(jiù"γ)輕言放(fàng)棄
我想這(zhè)是(shì)一(yī)≥≥個(gè)态度和(hé)處事(shì)方法問(wèn)題,這(zhè)不εβ±(bù)僅僅針對(duì)學習(xí)web标準。學習(xí)任何新知(z∑✘®hī)識,接受新概念,都(dōu)有(yǒu)困難,✘特别是(shì)需要(yào)你(nǐ)∑<改變原來(lái)已有(yǒu)的(de)習(xí)慣和(hé)思≈ ε♦維時(shí)。唯一(yī)的(de)問(wèn)題就(jiù)是(sh™πì):你(nǐ)認為(wèi)學習(xí)web标準是(shì)否≤ δ<值得(de)?你(nǐ)可(kě)以問(wèn)★λ ™問(wèn)自(zì)己:你(nǐ)是(shì)否認可(kě)web标準帶來(&'§lái)的(de)這(zhè)些(xiē)好(hǎo)處(簡化(huà)代Ω"₽π碼、加速開(kāi)發、壓縮文(wén)件(ε>←jiàn)尺寸、提高(gāo)下(xià)載速度、更好(hǎo)✘™εδ的(de)易用(yòng)性、獲得(de)更多(duō)用(yòng)戶、←©更易于維護、多(duō)平台兼容)?你(nǐ)是(shì)>₽ε否覺得(de)世界通(tōng)用(yòng)的(de)XML離(lí)π< 你(nǐ)還(hái)很(hěn)遠(yuǎn)?你(nǐ)是(s♣₩δhì)否認為(wèi)現(xiàn)在掌握的(de₽σ♥♦)HTML知(zhī)識就(jiù)已經足夠了(le)?
1.不(bù)是(shì)為(wèi)了(le)通(tōng)γ'過校(xiào)驗才标準化(huà)。
web标準的(de)本意是(shì)實現(xiàn)內(nèi)容(±®結構)和(hé)表現(xiàn)分(fēn)離(lí),就(jiù)是(σσshì)将樣式剝離(lí)出來(lái)放(fβ π>àng)在單獨的(de)css文(wén₹×)件(jiàn)中。這(zhè)樣做(zuò)的(₩∑λ≠de)好(hǎo)處是(shì)可(kě)以分←α(fēn)别處理(lǐ)內(nèi)容和∏≤×≤(hé)表現(xiàn),也(yě)方便搜索和(hé)內(nèi)容的(de ®)再利用(yòng)。
W3C校(xiào)驗僅僅是(shì)幫助你(Ωπ≤÷nǐ)檢查XHTML代碼的(de)書(shū)寫是(shì)否規範,CSβ↓S的(de)屬性是(shì)否都(dōu)在CCS2的(de)λ≈∞規範內(nèi)。代碼的(de)标準化(huà)僅僅♣♠是(shì)第一(yī)步,不(bù)是(shì)說(shuō™ε×)通(tōng)過的(de)校(xiào)驗,我λ的(de)網頁就(jiù)标準化(huà)了<&(le)。我們不(bù)是(shì)為(wèi)了(le)虛名,或者向别ε<人(rén)炫耀:“看(kàn)我的(de)頁面通(t✔>ōng)過了(le)校(xiào)驗”而去(qù)标準化(β♠♥huà),我們的(de)目的(de)是(shì)為(wèi)了(•←λle)使自(zì)己的(de)網頁設計(jì)工(gōng)作(zuò)¥更有(yǒu)效率,為(wèi)了(le)縮小(xφ←iǎo)網頁尺寸,為(wèi)了(le)能(néng)夠在任何浏覽器↔<ε(qì)和(hé)網絡設備中正常浏覽。
請(qǐng)大(dà)家(jiā)♣☆←沉下(xià)心來(lái),仔細研究和(hé)理(lǐ)©$↓解web标準的(de)內(nèi)涵。網絡上(shàng)已經充滿了(le)φ$≤不(bù)要(yào)浮躁和(hé)虛榮,請©↔ ♥(qǐng)不(bù)要(yào)将這(zhè)種風(f♦δ$ēng)氣帶到(dào)web标準應用(yòng)€★中來(lái),這(zhè)樣做(zuò)隻♠會(huì)影(yǐng)響和(hé)損害web标準的(de)推廣。
2.不(bù)要(yào)用(yòng¥∑™ )傳統的(de)表格思維來(lái)套div
“CSS布局就(jiù)是(shì)将原來(lái)用(yòng£λ ≥)table的(de)地(dì)方用(yòπ∑¥ng)div來(lái)替代,原來(lái)是(shì)表格嵌∑™♥•套,現(xiàn)在是(shì)DIV嵌套。”這(€δzhè)種觀點是(shì)錯(cuò)誤的(de)!
請(qǐng)跳(tiào)出原來(lái)表格布局的(≥∏¥de)禁锢,抛棄一(yī)個(gè)td接一(yī)個(g₩≤è)td放(fàng)置圖片和(hé)內(nèi)容的(de ↔)思維方式。我們上(shàng)面說(shuō)過web标準的(de♥™β)目的(de)是(shì)分(fēn)離(lí©∏☆₩)內(nèi)容和(hé)表現(xiàn),你(nǐ)可(k☆☆•ě)以這(zhè)樣思考,頁面裡(lǐ)有(yǒuΩ&£ )的(de)僅僅是(shì)內(nèi)容,沒有(yǒu)修飾的(d→•e)情況下(xià),它看(kàn)上(shàng)去(qù)就₽>π(jiù)是(shì)一(yī)張白(bái)白(bái)的★₩¥(de)頁面,上(shàng)有(yǒu)一(≈¶yī)些(xiē)文(wén)字和(hé☆β)圖片(這(zhè)個(gè)圖片是(shì♥≥)指內(nèi)容中的(de)圖片,是(shì)有 ↑(yǒu)真實意義的(de)圖片)。這(zhè$≥)些(xiē)文(wén)字圖片僅僅是(shì)依次羅列下(xià)來(lá≈∞≥€i),隻有(yǒu)結構,沒有(yǒu)任何樣式。然後加入表現(x™✔<iàn),将所有(yǒu)修飾的(de)圖片作(zuò)為∏♦™(wèi)背景,用(yòng)C SS來(lái)定義每♥>♦一(yī)塊內(nèi)容的(de)位置、字 ©™體(tǐ)、顔色等。
這(zhè)樣制(zhì)作(zuò)的(de)頁面才是(shì)內¥(nèi)容與表現(xiàn)分(fēn)離(lí)的(de)±≠↔♣,就(jiù)是(shì)說(shuō),當你(nǐ)抽掉css↑₩←文(wén)件(jiàn),剩下(xià&α )的(de)就(jiù)是(shì)幹淨的≠ (de)內(nèi)容。這(zhè)樣才能(nén☆←g)在文(wén)本浏覽器(qì)中閱讀(dú),才能(néng)在手機(j× ÷ī)、PDA中閱讀(dú),才能(néng)随時(shí)修改CSS≥γ✘↔實現(xiàn)改版。
3.不(bù)必為(wèi)每塊內(nèi)容都(dōu×')建立一(yī)個(gè)id
有(yǒu)網友(yǒu)抱怨css文(wén)件(jiàn)太大(Ω∞βdà)、太複雜(zá)。仔細看(kàn)他♥β♠(tā)們的(de)代碼,發現(xiàn)原因是(shì)他(tā)們對(¥∏duì)每塊內(nèi)容、甚至每句話(huà)都(dōu)γ→•÷定義一(yī)個(gè)div,建立一(yī)↓β←個(gè)ID。這(zhè)一(yī)方面是(shìβ↑λ)對(duì)樣式表應用(yòng)的(de)不(bù)φ₩≥γ熟悉,另一(yī)方面也(yě)表現(xiàn)出對(£π≠duì)web标準沒有(yǒu)徹底理(lǐ)解。
我們知(zhī)道(dào)內(nè↔∞©↑i)容都(dōu)是(shì)有(yǒu)結構的(de)(如(rσ✘σ ú)果不(bù)明(míng)白(bái),請§™γ(qǐng)閱讀(dú):理(lǐ)解表現(xiàn)和(hé)結構相(x©§iàng)分(fēn)離(lí) ),相(xiàng)同的≈•(de)結構的(de)內(nèi)容我們可(kě)以用(yòng)同一(yī)£&個(gè)樣式來(lái)定義,比如(rú)相(xiàng)同級别的(d↔α↑>e)标題、正文(wén)、圖片。對(duì)于多(duō)次引用☆(yòng)的(de)樣式可(kě)以用(y♥≈®∏òng)class來(lái)定義,不(bù)需∏®≠→要(yào)每個(gè)都(dōu)用(yòng)id;另外(wài)也(y✘Ωě)不(bù)是(shì)說(shuō)一(yī"★↔)定要(yào)用(yòng)<div>,你(π'§nǐ)完全可(kě)以用(yòng)<p>來(lá®®↑i)代替,同樣都(dōu)是(shì)塊級♠¶ 元素,一(yī)樣有(yǒu)盒模型的(de)&★♣•七個(gè)參數(shù),<div>僅僅方便浮動≥ 。
至于僅僅為(wèi)了(le)行(xíng)高(gāεσ'♦o)、間(jiān)距、一(yī)個(gè)修飾圖片而↑≥增加額外(wài)的(de)div,我想随著(♥&δzhe)對(duì)CSS的(de)應用(yòng)和(hé)理(÷₩§lǐ)解,你(nǐ)很(hěn)快(ku↕↕ài)就(jiù)可(kě)以省略掉這(zhè)些§♣≠(xiē)。我們反對(duì)用(yòng)DIV的(de)嵌套取代tabl✔e的(de)嵌套,這(zhè)沒有(yǒu)任何意義,不↑¥(bù)能(néng)體(tǐ)現(xiàn)內(©™↔nèi)容的(de)結構化(huà)。希望大(dà)家(ji<≤>ā)多(duō)研究CSS,寫出最簡練,最有(yǒu)效的(de)樣式表。≈'
4.不(bù)要(yào)因為(wèi)一(yī)點挫折就(jiù"γ)輕言放(fàng)棄
我想這(zhè)是(shì)一(yī)≥≥個(gè)态度和(hé)處事(shì)方法問(wèn)題,這(zhè)不εβ±(bù)僅僅針對(duì)學習(xí)web标準。學習(xí)任何新知(z∑✘®hī)識,接受新概念,都(dōu)有(yǒu)困難,✘特别是(shì)需要(yào)你(nǐ)∑<改變原來(lái)已有(yǒu)的(de)習(xí)慣和(hé)思≈ ε♦維時(shí)。唯一(yī)的(de)問(wèn)題就(jiù)是(sh™πì):你(nǐ)認為(wèi)學習(xí)web标準是(shì)否≤ δ<值得(de)?你(nǐ)可(kě)以問(wèn)★λ ™問(wèn)自(zì)己:你(nǐ)是(shì)否認可(kě)web标準帶來(&'§lái)的(de)這(zhè)些(xiē)好(hǎo)處(簡化(huà)代Ω"₽π碼、加速開(kāi)發、壓縮文(wén)件(ε>←jiàn)尺寸、提高(gāo)下(xià)載速度、更好(hǎo)✘™εδ的(de)易用(yòng)性、獲得(de)更多(duō)用(yòng)戶、←©更易于維護、多(duō)平台兼容)?你(nǐ)是(shì)>₽ε否覺得(de)世界通(tōng)用(yòng)的(de)XML離(lí)π< 你(nǐ)還(hái)很(hěn)遠(yuǎn)?你(nǐ)是(s♣₩δhì)否認為(wèi)現(xiàn)在掌握的(de₽σ♥♦)HTML知(zhī)識就(jiù)已經足夠了(le)?


