不少 Web 开发人员对 HTML 的代码规范知之甚少。css
在2000年至2010年,许多Web开发人员从 HTML 转换到 XHTML。html
使用 XHTML 开发人员逐渐养成了比较好的 HTML 编写规范。html5
而针对于 HTML5 ,咱们应该造成比较好的代码规范,如下提供了几种规范的建议。浏览器
文档类型声明位于HTML文档的第一行:服务器
1 <!DOCTYPE html>
若是你想跟其余标签同样使用小写,可使用如下代码:编辑器
1 <!doctype html>
HTML5 元素名可使用大写和小写字母。搜索引擎
推荐使用小写字母:spa
1 <SECTION> 2 <p>这是一个段落。</p> 3 </SECTION>
1 <Section> 2 <p>这是一个段落。</p> 3 </SECTION>
1 <section> 2 <p>这是一个段落。</p> 3 </section>
在 HTML5 中, 你不必定要关闭全部元素 (例如 <p> 元素),但咱们建议每一个元素都要添加关闭标签。 代码规范
不推荐:code
1 <section> 2 <p>这是一个段落。 3 <p>这是一个段落。 4 </section>
推荐:
1 <section> 2 <p>这是一个段落。</p> 3 <p>这是一个段落。</p> 4 </section>
在 HTML5 中, 空的 HTML 元素也不必定要关闭:
咱们能够这么写:
1 <meta charset="utf-8">
也能够这么写:
1 <meta charset="utf-8" />
在 XHTML 和 XML 中斜线 (/) 是必须的。
若是你指望 XML 软件使用你的页面,使用这种风格是很是好的。
HTML5 属性名容许使用大写和小写字母。
咱们推荐使用小写字母属性名:
不推荐:
1 <div CLASS="menu">
推荐:
1 <div class="menu">
HTML5 属性值能够不用引号。
属性值咱们推荐使用引号:
如下实例属性值包含空格,没有使用引号,因此不能起做用:
1 <table class=table striped>
如下使用了双引号,是正确的:
1 <table class="table striped">
图片一般使用 alt 属性。 在图片不能显示时,它能替代图片显示。
1 <img src="html5.gif" alt="HTML5" style="width:128px;height:128px">
定义好图片的尺寸,在加载时能够预留指定空间,减小闪烁。
1 <img src="html5.gif" alt="HTML5" style="width:128px;height:128px">
等号先后可使用空格。
1 <link rel = "stylesheet" href = "styles.css">
但咱们推荐少用空格:
1 <link rel="stylesheet" href="styles.css">
使用 HTML 编辑器,左右滚动代码是不方便的。
每行代码尽可能少于 80 个字符。
不要平白无故添加空行。
为每一个逻辑功能块添加空行,这样更易于阅读。
缩进使用两个空格,不建议使用 TAB。
比较短的代码间不要使用没必要要的空行和缩进。
1 <body> 2 3 <h1>菜鸟教程</h1> 4 5 <h2>HTML</h2> 6 7 <p> 8 菜鸟教程,学的不只是技术,更是梦想。 9 菜鸟教程,学的不只是技术,更是梦想。 10 菜鸟教程,学的不只是技术,更是梦想, 11 菜鸟教程,学的不只是技术,更是梦想。 12 </p> 13 14 </body>
1 <body> 2 3 <h1>菜鸟教程</h1> 4 5 <h2></h2> 6 <p>菜鸟教程,学的不只是技术,更是梦想。 7 菜鸟教程,学的不只是技术,更是梦想。 8 菜鸟教程,学的不只是技术,更是梦想。 9 菜鸟教程,学的不只是技术,更是梦想。</p> 10 11 </body>
1 <table> 2 <tr> 3 <th>Name</th> 4 <th>Description</th> 5 </tr> 6 <tr> 7 <td>A</td> 8 <td>Description of A</td> 9 </tr> 10 <tr> 11 <td>B</td> 12 <td>Description of B</td> 13 </tr> 14 </table>
1 <ol> 2 <li>London</li> 3 <li>Paris</li> 4 <li>Tokyo</li> 5 </ol>
在标准 HTML5 中, <html> 和 <body> 标签是能够省略的。
如下 HTML5 文档是正确的:
<!DOCTYPE html> <head> <title>页面标题</title> </head> <h1>这是一个标题</h1> <p>这是一个段落。</p>
不推荐省略 <html> 和 <body> 标签。
<html> 元素是文档的根元素,用于描述页面的语言:
1 <!DOCTYPE html> 2 <html lang="zh">
声明语言是为了方便屏幕阅读器及搜索引擎。
省略 <html> 或 <body> 在 DOM 和 XML 软件中会崩溃。
省略 <body> 在旧版浏览器 (IE9)会发生错误。
在标准 HTML5 中, <head>标签是能够省略的。
默认状况下,浏览器会将 <body> 以前的内容添加到一个默认的 <head> 元素上。
1 <!DOCTYPE html> 2 <html> 3 <title>页面标题</title> 4 5 <body> 6 <h1>这是一个标题</h1> 7 <p>这是一个段落。</p> 8 </body> 9 10 </html>
如今省略 head 标签还不推荐使用。
HTML5 中 <title> 元素是必须的,标题名描述了页面的主题:
1 <title>菜鸟教程</title>
标题和语言可让搜索引擎很快了解你页面的主题:
1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>菜鸟教程</title> 6 </head>
注释能够写在 <!-- 和 --> 中:
1 <!-- 这是注释 -->
比较长的评论能够在 <!-- 和 --> 中分行写:
1 <!-- 2 这是一个较长评论。 这是 一个较长评论。这是一个较长评论。 3 这是 一个较长评论 这是一个较长评论。 这是 一个较长评论。 4 -->
长评论第一个字符缩进两个空格,更易于阅读。
样式表使用简洁的语法格式 ( type 属性不是必须的):
1 <link rel="stylesheet" href="styles.css">
短的规则能够写成一行:
1 p.into {font-family: Verdana; font-size: 16em;}
长的规则能够写成多行:
1 body { 2 background-color: lightgrey; 3 font-family: "Arial Black", Helvetica, sans-serif; 4 font-size: 16em; 5 color: black; 6 }
使用简洁的语法来载入外部的脚本文件 ( type 属性不是必须的 ):
1 <script src="myscript.js">
一个糟糕的 HTML 格式可能会致使 JavaScript 执行错误。
如下两个 JavaScript 语句会输出不一样结果:
1 var obj = getElementById("Demo") 2 3 var obj = getElementById("demo")
HTML 中 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 的扩展名文件本质上是没有区别的。浏览器和 Web 服务器都会把它们看成 HTML 文件来处理。
区别在于:
.htm 应用在早期 DOS 系统,系统如今或者只能有三个字符。
在 Unix 系统中后缀没有特别限制,通常用 .html。
摘抄于菜鸟教程