HTML5 程式碼規範
HTML 程式碼約定
許多 Web 開發人員對 HTML 的程式碼規格所知甚少。
在2000年至2010年,許多Web開發人員從 HTML 轉換到 XHTML。
使用 XHTML 開發人員逐漸養成了比較好的 HTML 編寫規格。
而針對於 HTML5 ,我們應該形成比較好的程式碼規範,以下提供了幾個規範的建議。
使用正確的文件類型
#文件類型宣告位於HTML文件的第一行:
<!DOCTYPE html>
#如果你想跟其他標籤一樣使用小寫,可以使用以下程式碼:
<!doctype html>
使用小寫元素名稱
#HTML5 元素名稱可以使用大寫和小寫字母。
推薦使用小寫字母:
混合了大小寫的風格是非常糟糕的。
開發人員通常使用小寫 (類似 XHTML)。
小寫風格看起來更清爽。
小寫字母容易寫。
不建議:
<SECTION>
< ;p>這是一個段落。 </p>
</SECTION>
#非常糟糕:
################ ##<Section> ### <p>這是一個段落。 </p>###</SECTION>##################推薦:#########
<section>
<p>這是一個段落。 </p>
</section>
關閉所有HTML 元素
在HTML5 中, 你不一定要關閉所有元素(例如<p> 元素),但我們建議每個元素都要加上關閉標籤。
不建議:
#<section>
<p>這是一個段落。
<p>這是一個段落。
</section>
建議:
##<section> <p>這是一個段落。 </p>
<p>這是一個段落。 </p>
</section>
#關閉空白的HTML 元素
#在HTML5 中, 空的HTML 元素也不一定要關閉:我們可以這麼寫:也可以這麼寫:<meta charset="utf-8">
#在XHTML 和XML 中斜線(/) 是必須的。 如果你期望 XML 軟體使用你的頁面,使用這個風格是非常好的。<meta charset="utf-8" />
使用小寫屬性名稱
HTML5 屬性名稱允許使用大寫和小寫字母。
我們推薦使用小寫字母屬性名:
同時使用大寫寫是非常不好的習慣。
開發人員通常使用小寫 (類似 XHTML)。
小寫風格看起來更清爽。
小寫字母容易寫。
不建議:
#<div CLASS="menu">
推薦:
#<div class="menu">
屬性值
#HTML5 屬性值可以不用引號。
屬性值我們推薦使用引號:
如果屬性值含有空格需要使用引號。
混合風格不推薦的,建議統一風格。
屬性值使用引號易於閱讀。
以下實例屬性值包含空格,沒有使用引號,所以不能起作用:
<table class=table striped>
以下使用了雙引號,是正確的:
<table class="table striped">
############################################################################################# ##############圖片屬性############圖片通常使用 alt 屬性。 當圖片不能顯示時,它能取代圖片顯示。 ############<img src="html5.gif" alt="HTML5" >############定義好圖片的尺寸,在載入時可預留指定空間,減少閃爍。 ###
<img src="html5.gif" alt="HTML5" style="width:128px;height:128px">
空格和等號
#等號前後可以使用空格。
<link rel = "stylesheet" href = "styles.css">##但我們建議少用空格:
避免一行程式碼過長
使用HTML 編輯器,左右捲動程式碼是不方便的。
每行程式碼盡量少於 80 個字元。
空行與縮排
#不要無緣無故加入空白行。為每個邏輯功能區塊新增空白行,這樣更容易閱讀。
< ;h1>php中文網</h1>
縮排使用兩個空格,不建議使用 TAB。
比較短的程式碼間不要使用不必要的空白行很縮排。
不必要的空白行與縮排:
#<body>
<h2>HTML</h2> <p> php網路,學的是技術,更是夢想。 php中文網,學的不只是技術,更是夢想。
php中文網,學的不僅是技術,更是夢想,### php中文網,學的不僅是技術,更是夢想。 ### </p>######</body>#################d:################################################################################<body>
<h1>php中文網</h1>
<h2></h2>
< ;p>php中文網,學的不只是技術,更是夢想。
php中文網,學的不只是技術,更是夢想。
php中文網,學的不只是技術,更是夢想。
php中文網,學的不只是技術,更是夢想。 </p>
</body>
#表格實例:
列表實例:<table>
<tr>
<th>Name</th>
<th>Description</th>## <th>Description</th>## <th>Description</th>## <th>Description</th>
\gt;##\Sgt; # <tr>
<td>A</td>
<td>Description of A</td>
<td>Description of A</td>##f ;td>B</td>
<td>Description of B</td>
</tr>
</table>
<ol>
<li>London</li><li> Paris</li> <li>Tokyo</li>
</ol>
省略<html> ; 和<body>?
在標準HTML5 中, <html> 和<body> 標籤是可以省略的。
<!DOCTYPE html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <h1>这是一个标题</h1> <p>这是一个段落。</p>執行程式嘗試
#不建議省略 <html> 和 <body> 標籤。
<html> 元素是文件的根元素,用來描述頁面的語言:
<!DOCTYPE html>< html lang="zh">省略 <html> 或 <body> 在 DOM 和 XML 軟體中會崩潰。 省略 <body> 在舊版瀏覽器 (IE9)會發生錯誤。
聲明語言是為了方便螢幕閱讀器及搜尋引擎。
省略 <head>?
#
在標準 HTML5 中, <head>標籤是可以省略的。
預設情況下,瀏覽器會將 <body> 之前的內容加入到一個預設的 <head> 元素上。
<!DOCTYPE html> <html> <meta charset="utf-8"> <title>php中文网(php.cn)</title> <body> <p id="Demo">段落 1。</p> <p id="demo">段落 2。</p> <script> // 只有段落 2 会被替换 document.getElementById("demo").innerHTML = "HELLO。"; </script> </body> </html>
執行程式嘗試
提示:現在省略head 標籤也不推薦使用。
來源資料
#HTML5 中<title> 元素是必須的,標題名稱描述了頁面的主題:
<title>php中文網</title>
標題和語言可以讓搜尋引擎很快了解你頁面的主題:
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF -8">
<title>php中文網路</title>
</head>
HTML註解
註解可以寫在<!-- 和--> 中:
<!-- 這是註解-->
比較長的評論可以在<!-- 和--> 中分行寫:
<!--
這是一個較長評論。 這是 一個較長評論。這是一個較長評論。
這是 一個較長評論 這是一個較長評論。 這是 一個較長評論。
-->
長評論第一個字元縮排兩個空格,更容易閱讀。
樣式表
樣式表使用簡潔的語法格式( type 屬性不是必須的):
<link rel="stylesheet" href="styles.css">
短的規則可以寫成一行:
#p.into {font-family: Verdana; font-size: 16em;}
長的規則可以寫成多行:
body {
background-color: lightgrey;
font-family: "Arial Black", Helvetica, sans-serif;
font-size 16em;
}
將左花括號與選擇器放在同一行。
左花括號與選擇器間新增以空格。 使用兩個空格來縮排。
逗號和符號之後使用一個空格。
每個屬性與值結尾都要使用符號。 只有屬性值包含空格時才使用引號。
每行最多 80 個字元。
#在逗號和分號後面加上空格是常用的一個規則。
#在HTML 中載入JavaScript
##使用簡潔的語法來載入外部的腳本檔案( type 屬性不是必須的):
###<script src="myscript.js"> #####################使用JavaScript 存取HTML 元素###############一個糟糕的HTML 格式可能會導致JavaScript執行錯誤。 ##################HTML 中 JavaScript 盡量使用相同的命名規則。 #########存取 JavaScript 程式碼規格。 ########################################使用小寫檔名######## #####大多Web 伺服器(Apache, Unix) 對大小寫敏感: london.jpg 不能透過London.jpg 存取。 ######其他 Web 伺服器 (Microsoft, IIS) 對大小寫不敏感: london.jpg 可以透過 London.jpg 或 london.jpg 存取。 ######你必須保持統一的風格,我們建議統一使用小寫的檔案名稱。 ################檔案副檔名
HTML 檔案後綴可以是 .html (或 .htm)。
CSS 檔案後綴是 .css 。
JavaScript 檔案後綴是 .js 。
#.htm 和.html 的差異
#.htm 和.html 的副檔名檔案本質上是沒有區別的。瀏覽器和 Web 伺服器都會把它們當作 HTML 檔案來處理。
差異在於:
.htm 應用在早期 DOS 系統,系統現在或只能有三個字元。
在 Unix 系統中後綴沒有特別限制,一般用 .html。
技術上區別
如果一個URL 沒有指定檔案名稱(如http://www.php.cn/css/), 伺服器會傳回預設的檔案名稱。通常預設檔名為 index.html, index.htm, default.html, 和 default.htm。
如果伺服器只配置了 "index.html" 作為預設文件,你必須將文件命名為 "index.html", 而不是 "index.htm"。
但是,通常伺服器可以設定多個預設文件,你可以根據需要設定預設文件嗎。
不管怎樣,HTML 完整的字尾是 ".html"。