[TOC]
## HEAD
### 文檔類型
為每個 HTML 頁面的第一行添加標準模式(standard mode)的聲明, 這樣能夠確保在每個瀏覽器中擁有一致的表現。
~~~
<!DOCTYPE html>
~~~
### 字符編碼
* 以無 BOM 的 utf-8 編碼作為文件格式;
* 指定字符編碼的 meta 必須是 head 的第一個直接子元素;
~~~
<html>
<head>
<meta charset="utf-8">
......
</head>
<body>
......
</body>
</html>
~~~
### IE 兼容模式
優先使用最新版本的IE 和 Chrome 內核
~~~
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
~~~
### SEO 優化
~~~
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<!-- SEO -->
<title>Style Guide</title>
<meta name="keywords" content="your keywords">
<meta name="description" content="your description">
<meta name="author" content="author,email address">
</head>
~~~
### viewport
* viewport: 一般指的是瀏覽器窗口內容區的大小,不包含工具條、選項卡等內容;
* width: 瀏覽器寬度,輸出設備中的頁面可見區域寬度;
* device-width: 設備分辨率寬度,輸出設備的屏幕可見寬度;
* initial-scale: 初始縮放比例;
* maximum-scale: 最大縮放比例;
為移動端設備優化,設置可見區域的寬度和初始縮放比例。
~~~
<meta name="viewport" content="width=device-width, initial-scale=1.0">
~~~
### iOS 圖標
* apple-touch-icon 圖片自動處理成圓角和高光等效果;
* apple-touch-icon-precomposed 禁止系統自動添加效果,直接顯示設計原圖;
~~~
<!-- iPhone 和 iTouch,默認 57x57 像素,必須有 -->
<link rel="apple-touch-icon-precomposed" href="/apple-touch-icon-57x57-precomposed.png">
<!-- iPad,72x72 像素,可以沒有,但推薦有 -->
<link rel="apple-touch-icon-precomposed" href="/apple-touch-icon-72x72-precomposed.png" sizes="72x72">
<!-- Retina iPhone 和 Retina iTouch,114x114 像素,可以沒有,但推薦有 -->
<link rel="apple-touch-icon-precomposed" href="/apple-touch-icon-114x114-precomposed.png" sizes="114x114">
<!-- Retina iPad,144x144 像素,可以沒有,但推薦有 -->
<link rel="apple-touch-icon-precomposed" href="/apple-touch-icon-144x144-precomposed.png" sizes="144x144">
~~~
### favicon
在未指定 favicon 時,大多數瀏覽器會請求 Web Server 根目錄下的 favicon.ico 。為了保證 favicon 可訪問,避免404,必須遵循以下兩種方法之一:
* 在 Web Server 根目錄放置 favicon.ico 文件;
* 使用 link 指定 favicon;
~~~
<link rel="shortcut icon" href="path/to/favicon.ico">
~~~
### HEAD 模板
~~~
<!DOCTYPE html>
<html lang="zh-cmn-Hans">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Style Guide</title>
<meta name="description" content="不超過150個字符">
<meta name="keywords" content="">
<meta name="author" content="name, email@gmail.com">
<!-- 為移動設備添加 viewport -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- iOS 圖標 -->
<link rel="apple-touch-icon-precomposed" href="/apple-touch-icon-57x57-precomposed.png">
<link rel="alternate" type="application/rss+xml" title="RSS" href="/rss.xml" />
<link rel="shortcut icon" href="path/to/favicon.ico">
</head>
~~~
### 協議
不要指定引入資源所帶的具體協議。
當引入圖片或其他媒體文件,還有樣式和腳本時,URLs 所指向的具體路徑,不要指定協議部分(http:, https:),除非這兩者協議都不可用。
不指定協議使得 URL 從絕對的獲取路徑轉變為相對的,在請求資源協議無法確定時非常好用,而且還能為文件大小節省幾個字節。
~~~
<!-- Not recommended -->
<script src="http://cdn.com/foundation.min.js"></script>
<!-- Recommended -->
<script src="//cdn.com/foundation.min.js"></script>
css
<!-- Not recommended -->
.example {
background: url(http://static.example.com/images/bg.jpg);
}
<!-- Recommended -->
.example {
background: url(//static.example.com/images/bg.jpg);
}
~~~