搜尋
首頁web前端css教學如何使用CSS來進行網頁排版

第1天:選什麼樣的DOCTYPE

前言

大家好!這個系列文章是按阿捷自己製作w3cn.org站點的過程編寫的。之前阿捷也一直沒有製作過一個真正符合web標準的網站。現在邊參考國外資料邊製作,同時把過程中的心得和經驗記錄下來,希望對大家有點幫助。好了,讓我們開始吧。

第一天

開始製作符合標準的站點,第一件事情就是宣告符合自己需要的DOCTYPE。

查看本站首頁原始程式碼,可以看到第一行為:



打開一些符合標準的站點,例如著名web設計軟體開發商Macromedia,設計大師Zeldman的個人網站,會發現同樣的程式碼。而其他符合標準的網站(例如k10k.net)的程式碼則如下:



那麼這些程式碼有什麼意義?一定要放置嗎?

什麼是DOCTYPE

上面這些程式碼我們稱呼做DOCTYPE宣告。 DOCTYPE是document type(文件類型)的簡寫,用來說明你用的XHTML或HTML是什麼版本。

其中的DTD(例如上例中的xhtml1-transitional.dtd)叫文檔類型定義,裡麵包含了文檔的規則,瀏覽器就根據你定義的DTD來解釋你頁面的標識,並展現出來。

要建立符合標準的網頁,DOCTYPE聲明是必不可少的關鍵組成部分;除非你的XHTML確定了一個正確的DOCTYPE,否則你的標識和CSS都不會生效。

XHTML 1.0 提供了三種DTD宣告可供選擇:

過渡的(Transitional):要求非常寬鬆的DTD,它允許你繼續使用HTML4.01的標識(但是要符合xhtml的寫法)。完整代碼如下:



嚴格的(Strict):要求嚴格的DTD,你不能使用任何表現層的識別和屬性,例如
。完整代碼如下:



框架的(Frameset):專門針對框架頁面設計使用的DTD,如果你的頁面中包含有框架,需要採用這種DTD。完整程式碼如下:


我們選擇什麼樣的DOCTYPE

理想情況當然是嚴格的DTD,但對於我們大多數剛接觸web標準的設計師來說,過渡的DTD(XHTML 1.0 Transitional)是目前理想選擇(包括本站,使用的也是過渡型DTD)。因為這種DTD也允許我們使用表現層的識別、元素和屬性,也比較容易通過W3C的程式碼校驗。

註:上面所說的"表現層的標識、屬性"是指那些純粹用來控製表現的tag,例如用於排版的表格、背景顏色標識等。在XHTML中標識是用來表示結構的,而不是用來實現表現形式,我們過渡的目的是最終實現資料和表現相分離。

打個比方:人體模特兒換衣服。模特兒就好比數據,衣服則是表現形式,模特兒和衣服是分離的,這樣你就可以隨意換衣服。而原來HTML4中,數據和表現是混雜在一起的,要一次性換個表現形式非常困難。呵呵,有點抽象了,這個概念需要我們在應用過程中逐步領會。

補充

DOCTYPE聲明必須放在每個XHTML文件最頂部,在所有程式碼和識別之上。

更多細節可以訪問W3C的網站

#

第2天:什麼是名字空間

DOCTYPE宣告好以後,接下來的程式碼是:



通常我們HTML4.0的程式碼只是,這裡的"xmlns"是什麼呢?

這個"xmlns"是XHTML namespace的縮寫,叫做"名字空間"宣告。名字空間是什麼作用呢?阿捷自己的理解是:

由於xml允許你自己定義自己的標識,你定義的標識和其他人定義的標識有可能相同,但表示不同的意義。當文件交換或共享的時候就容易產生錯誤。為了避免這種錯誤發生,XML採用名字空間聲明,讓你透過一個網址指向來辨識你的標誌。例如:

小王和小李都定義了一個標識,如果小王的名字空間是"http://www.xiaowang.com",小李的名字空間是"http ://www.xiaoli.com",那麼當兩個文件交換資料時,也不會混淆標識,因為它屬於不同的名字空間。

更通俗的解釋是:名字空間就是要為文件做一個標記,告訴別人,這個文件是屬於誰的。只不過這個"誰"用了一個網址來代替。

XHTML是HTML轉換成XML的語言,它需要符合XML文件規則,因此也需要定義名字空間。又因為XHTML1.0不能自訂標識,所以它的名字空間都相同,就是"http://www.w3.org/1999/xhtml"。如果你還不太理解也不要緊,目前階段我們只要照抄程式碼就可以了。

後面的lang="gb2312",指定你的文件用簡體中文。

第3天:定義語言編碼

第三個步驟是定義你的語言編碼,類似這樣:


以上是如何使用CSS來進行網頁排版的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
' CSS4”更新' CSS4”更新Apr 11, 2025 pm 12:05 PM

自從我第一次介紹了CSS4面中的事情以來,就已經進行了更多的討論。我將在這裡從其他人那裡匯集我最喜歡的想法。有

三種代碼三種代碼Apr 11, 2025 pm 12:02 PM

每次啟動一個新項目時,我都會將我正在查看的代碼分為三種類型,或者如果您願意的話。我認為這些類型可以應用於

https很容易!https很容易!Apr 11, 2025 am 11:51 AM

我對公開哀悼HTTPS的複雜性感到內gui。過去,我從第三方供應商那裡購買了SSL證書,並且遇到了麻煩

HTML數據屬性指南HTML數據屬性指南Apr 11, 2025 am 11:50 AM

您想了解的有關HTML,CSS和JavaScript中數據屬性的所有信息。

了解JavaScript中的不變性了解JavaScript中的不變性Apr 11, 2025 am 11:47 AM

如果您以前從未在JavaScript中使用不變性,則可能會發現很容易將其與為新值或重新分配分配變量的混淆。

具有現代CSS功能的定製樣式表單輸入具有現代CSS功能的定製樣式表單輸入Apr 11, 2025 am 11:45 AM

如今,可以在語義上且易於訪問的同時構建自定義的複選框,無線電按鈕和切換開關。我們甚至不需要

腳註字符腳註字符Apr 11, 2025 am 11:34 AM

有特殊的超級數字字符有時非常適合腳註。他們在這裡:

如何使用HTML,CSS和JavaScript創建動畫倒計時計時器如何使用HTML,CSS和JavaScript創建動畫倒計時計時器Apr 11, 2025 am 11:29 AM

您是否曾經在項目上需要一個倒計時計時器?對於這樣的東西,可以自然訪問插件,但實際上更多

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器