亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > HTML > 正文

學習如何書寫整潔規范的HTML標記

2024-08-26 00:09:39
字體:
來源:轉載
供稿:網友

良好的html代碼是一個漂亮網站的基礎。當我教別人css的時候, 我總是首先告訴他們: 良好的css只存在于良好的html標記基礎上。這就好像一間房子需要一個堅固的地基一樣,對不? 整潔、語義化的html標記具有很多的優勢,但卻還是有很多網站使用著并不友好的標記寫法。

讓我們來看一些寫得并不友好的html標記, 并針對這些問題進行討論,從而學習如何書寫整潔規范的html標記。

網頁設計注: chris cyier在這里使用了兩個文檔來進行本文的代碼說明: bad codegood code 。大家學習的時候請參考著這兩個文件。

1. 嚴格的 doctype

我們要做到這一點,只需要按正確的步驟來做即可. 沒必要去討論是否使用html 4.01或 xhtml 1.0,兩者都對我們書寫正確的代碼提出了嚴格的要求。

strict doctype example

但無論如何我們的代碼不應該使用任何tables表格來進行布局, 所以也就沒必要使用transitional doctype.

相關資源:

  • w3c推薦的 dtds(文件類型聲明)
  • fix your site with the right doctype!
  • no more transitional doctypes, please

網頁設計注: 所謂的dtd就是文檔類型聲明,簡單來說,就是對特定文檔所定義的一些規則,這些規則包括一系列的元素和實體的聲明。xhtml文檔類型有三種: strict(嚴格類型), transitional(過渡類型)和 frameset(框架類型)。目前,我們使用最多的是transitional,比如本站目前也是使用 xhtml 1.0 transitional。如果你的html代碼書寫的還算良好,那把現有的transitional 轉為strict還是比較方便的。反之,也不用太急著轉,個人覺得,strict更嚴謹,但用transitional也并沒有太大影響。

2. character set & encoding characters

在我們的 <head> 部份, 第一件事情就是聲明字符集. 我們使用了utf-8, 但是把它放到了 <title>后面. 讓我們把字符集聲明移動到最上面,因為我們要讓瀏覽器在閱讀任何內容之前就應該知道以何種字符集來進行處理。

character example

除了字符集聲明的位置外,<title>中出現的奇怪字符也是需要注意的問題,比如最常用的”&“字符,我們應該使用字符實體”&amp;“來替換它。

相關資源:

  • wikipedia: utf-8
  • a tutorial on character code issues
  • the extended ascii table

3. 適當的縮進

在書寫代碼的時候,縮進并不會影響網頁的外觀,但使用適當的縮進能使代碼更具可讀性,標準的縮進方法是當你開始一個新的元素時縮進一個tab位(或幾個空格)。另外,記得,關閉元素的標簽與開始標簽對齊。

網頁設計注: 一些朋友會嫌書寫代碼的時候縮進比較麻煩,如果僅僅是你一個人閱讀這份代碼,那可能沒什么問題,你自己覺得ok就好。但如果是協作或你的作品是公開發布分享的,那書寫漂亮的可讀化性更高的代碼就很有必要了。

indentation example

相關資源:

  • clean up your web pages with html tidy

4. 使用外部css 和 javascript

我們有一些css代碼已經延伸到我們的<head>部分。這是一個嚴重的犯規,因為它它只能適用于單一的html網頁。保持獨立的css文件意味著未來的網頁可以鏈接到它們,并使用相同的代碼。javascript也是同樣的道理。

網頁設計注: 當然,這個問題或許也并不是那么嚴重。比如作為wordpress主題來說,寫在<head>里面的代碼也就作用于所有wordpress頁面。但把css寫在<head>里面仍然是個非常不好的習慣。

external example

5. 正確的標簽嵌套

在我們的網站標題里面,我們使用<h1>作為網站標題標簽,這是完美的。并且添加了一個到首頁的鏈接,但錯誤就出在把鏈接放到了<h1>外面,<a>鏈接包圍了<h1>。這種簡單的嵌套錯誤,大多數瀏覽器都能良好的處理,但從技術上來說,這是不行的。

錨鏈接是一個內聯元素,而<h1>標題是一個區塊元素,區塊元素不應該被放在內聯元素中。

nesting example

6. 去除不必要的div

我不知道誰首先發明,但我喜歡“ divitis ”這個詞,它指的是在html標記中過度的使用divs。在學習網頁設計的某個階段,大家學習如何使用一個div來包裹諸多其它元素來實現方便的布局和樣式化。這就導致了div元素的濫用,需要的地方我們用了,完全不必要的地方我們也用了。

divitis example

在上圖的例子中,我們使用了一個 div (”topnav”) 來包含了ul列表 (”bigbarnavigation”). 但div和ul都是區塊元素,所以沒有必要使用div來包裹ul元素。

相關資源:

  • divitis: what it is, and how to cure it.

7. 使用更好的命名慣例

現在正好談一下命名管理, 在上一條所說的示例中,我們的ul使用了id名稱 “bigbarnavigation.” 其中 “navigation” 很好的說明了該區塊的內容,但 “big” 和 “bar” 描述的卻是設計而不是內容. 它可能是在說這個菜單是一個很大的工具條, 但如果這個菜單的設計變成垂直的,那這個名稱就會顯得混亂和不相關。

naming conventions example

友好的 class 和 id 名稱 例如 “mainnav,” “subnav,” “sidebar,” “footer,” “metadata,” ,它們描述了所包含的內容. 不好的 class 和 id 名稱則描述設計, 比如 “bigboldheader,” “leftsidebar,” and “roundedbox.”

網頁設計注: chris 所強調的是按內容還是按設計來進行命名。個人補充一點: id和class名稱使用大寫還是小寫,或單詞首字母大寫。首先,完全的大寫單詞是不利于閱讀的,排除。至于完全使用小寫還是單詞首字母大寫,就看個人的習慣了。重要的一點是,不管使用哪種規則,應該保持一致。不要一會兒純小寫,一會兒又首字母大寫,會很混亂。

另外,我個人比較迷糊的是,對比較長的名稱,是加下劃線“_”, 還是連字符”-”,亦或不用?;蛘呤俏蚁氲奶珡碗s了吧。用哪種都好,保持一致就ok。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久人人爽人人爽爽久久| 精品成人69xx.xyz| 成人激情视频在线播放| 韩国三级日本三级少妇99| 国产视频亚洲视频| 欧洲s码亚洲m码精品一区| 这里只有精品久久| 国产精品久久9| 91亚洲精品在线观看| 久操成人在线视频| 亚洲欧美国产视频| 精品国产一区二区三区久久久| 亚洲韩国欧洲国产日产av| 精品调教chinesegay| 91精品国产高清久久久久久| 国色天香2019中文字幕在线观看| 国产精品久久久久久久久男| 亚洲成色777777在线观看影院| 黄网站色欧美视频| 日韩av成人在线观看| 国内精品一区二区三区| 国产成人福利夜色影视| 国产精品日韩av| 欧美另类极品videosbestfree| 欧美日韩亚洲视频一区| 日韩在线欧美在线国产在线| 日韩精品亚洲精品| 日韩高清电影好看的电视剧电影| 国产伦精品免费视频| 欧美极品第一页| 色综合久久久888| 成人免费在线视频网站| 欧美日在线观看| 久久99精品久久久久久噜噜| 欧日韩在线观看| 精品国产欧美成人夜夜嗨| 国产精品久久久久av免费| 欧美裸体xxxx| 亚洲精品美女久久久| 久久天堂av综合合色| 亚洲成人免费网站| 一本大道久久加勒比香蕉| 国产大片精品免费永久看nba| 亚洲精品电影在线| 国产精品户外野外| 国产欧美精品va在线观看| 欧美在线免费观看| 亚洲成在人线av| 日韩国产欧美精品一区二区三区| 国产精品一区二区三区成人| 色婷婷综合成人| 国产日产欧美a一级在线| 日韩av电影在线免费播放| 91在线网站视频| 久久99精品久久久久久青青91| 精品国产区一区二区三区在线观看| 亚洲性生活视频在线观看| 色妞欧美日韩在线| 亚洲欧洲日本专区| 2020国产精品视频| 91久久国产综合久久91精品网站| 91精品国产高清久久久久久91| 日韩精品在线视频美女| 欧美一级高清免费| 欧美一级bbbbb性bbbb喷潮片| 国产精品精品久久久| 日韩美女av在线免费观看| 少妇久久久久久| 亚洲自拍另类欧美丝袜| 久久国产精品网站| 国产在线高清精品| 不卡av在线网站| 国产精品黄视频| www.日韩不卡电影av| 欧美成人sm免费视频| 精品国产福利视频| 91视频免费在线| 成人在线免费观看视视频| 成人免费黄色网| 欧美极品少妇与黑人| 国产一区二区丝袜| 91在线免费看网站| 欧美日韩成人在线播放| 国产亚洲日本欧美韩国| 亚洲一区二区三区四区在线播放| 欧美另类老女人| 97精品免费视频| 欧美成人免费一级人片100| 午夜精品久久久久久久白皮肤| 国产成人精品日本亚洲| 91欧美精品成人综合在线观看| 亚洲a级在线观看| 日韩免费在线看| 色综合天天狠天天透天天伊人| 97视频在线观看网址| 55夜色66夜色国产精品视频| 亚洲а∨天堂久久精品9966| 一区二区三区黄色| 日韩欧美中文字幕在线播放| 亚洲自拍偷拍区| 久久97久久97精品免视看| 中文字幕亚洲欧美在线| 国内精品国产三级国产在线专| 国产精品天天狠天天看| 最新国产成人av网站网址麻豆| 亚洲xxxx妇黄裸体| 国产亚洲一区精品| 国产精品老女人精品视频| 国产精品私拍pans大尺度在线| 日韩精品久久久久久久玫瑰园| 性色av一区二区三区在线观看| 在线播放国产一区二区三区| 亚洲最大成人免费视频| 国产精品吊钟奶在线| 日韩精品极品在线观看| 国产精品中文在线| 欧美日韩性视频在线| 欧美大胆在线视频| 欧美高清视频在线| 亚洲精品一区二区网址| 久久精品国产2020观看福利| 亚洲国产精品人久久电影| 欧美成人午夜激情视频| 538国产精品一区二区免费视频| 久久精品视频导航| 国产亚洲欧洲高清一区| 国产成人精品优优av| 亚洲aaaaaa| 亚洲国产精品久久久久久| 亚洲成av人片在线观看香蕉| 色偷偷噜噜噜亚洲男人的天堂| 日本成人精品在线| 国产精品国内视频| 国产精品99久久久久久久久久久久| 亚洲欧美日韩精品久久亚洲区| 国产日本欧美一区二区三区| 亚洲网站在线观看| 久久综合久久八八| 狠狠色狠狠色综合日日五| 日韩av影片在线观看| 国产成人涩涩涩视频在线观看| 2018中文字幕一区二区三区| 中文字幕精品久久| 午夜免费久久久久| 欧美诱惑福利视频| 久久久中精品2020中文| 国产成人短视频| 亚洲人成网站999久久久综合| 欧美在线欧美在线| 亚洲精品720p| 亚洲成人精品在线| 国产精品美女久久久久av超清| 911国产网站尤物在线观看| 亚洲国产精品人久久电影| 欧美精品激情在线观看| 亚洲第一免费网站| 国产成人97精品免费看片| 午夜精品一区二区三区在线视频| 久久久99久久精品女同性| 国产mv免费观看入口亚洲| 97在线看免费观看视频在线观看| 欧美亚洲成人xxx| 欧美激情videoshd| 美女视频久久黄|