HTML/CSS规范指南 From Google
2013-03-14 15:24
281 查看
google的html/css规范指南
google之前出了javascript规范指南,中文翻译传送门在此,现在有了html/css规范指南,明河开始翻译时版本是2.1。后续如果google有新的内容补充,明河也会跟进。
常规样式规则
协议引入的assets资源文件(js、css、图片文件)忽略协议(http:, https:),比如:
不推荐的写法:
常规格式规则
缩进使用二个空格缩进(PS:明河一般使用四个空格缩进-_-!)
<ul>
<li>Fantastic</li>
<li>Great</li>
</ul>
只使用小写。
所有的代码只使用小写字母(PS:淘宝的做法是如果跟js的DOM操作相关,作为钩子使用J_Trigger类似的方式):包括元素名称、样式名、属性名(除了text/CDATA)。
不推荐的写法:
<A HREF="/">Home</A>
推荐的写法:
删掉冗余的行尾空格。
不推荐的写法:
常规Meta规则
编码使用utf-8编码。
指定页面的文档编码为utf-8
(ps:关于html编码指定方面的内容,可以看《 Character Sets & Encodings in XHTML, HTML and CSS》)
注释
如果可能,注释还是必不可少的。
使用注释说明下代码:它包括了什么,它的目的是什么,为什么优先使用它。
行动项目
(ps:推荐使用)
google建议养成写TODO的习惯,特别是在项目中,记录下一些要改,但来不及修改的地方,或指派其他同事做修改。
高亮TODO,不同的编辑器有不一样的方式,比如idea是TODO:。
常规html设计规则
文档类型使用html5文档声明:
<!DOCTYPE html>
不再使用XHTML( application/xhtml+xml)。
HTML 的正确性
可以使用一些工具,检验你html的正确性,比如 W3C HTML validator。
不推荐的写法:
<!DOCTYPE html>
<meta charset="utf-8">
<title>Test</title>
<article>This is only a test.</article>
HTML 的语义性
使用富含语义性的标签(ps:建议掌握html5新增的部分语义标签)。
google特别指出了要确保html的可用性,看下面的代码
不推荐的写法:
给多媒体元素,比如canvas、videos、 images增加alt属性,提高可用性(特别是常用的img标签,尽可量得加上alt属性,提供图片的描述信息)。
不推荐的写法:
尽可能保持结构(html结构标签)、描述(css)、行为(javascript)的分离,并且让他们尽可能少的交互。确保html文档内容只有html的结构,将css和javascript以资源的方式引入。
不推荐的写法:
<!DOCTYPE html>
<title>HTML sucks</title>
<link rel="stylesheet" href="base.css" media="screen">
<link rel="stylesheet" href="grid.css" media="screen">
<link rel="stylesheet" href="print.css" media="print">
<h1 style="font-size: 1em;">HTML
sucks</h1>
<p>I’ve read about this on a few sites but now I’m sure:
<u>HTML is stupid!!1</u>
<center>I can’t believe there’s no way to control the styling of
my website without doing everything all over again!</center>
推荐的写法:
<!DOCTYPE html>
<title>My first CSS-only redesign</title>
<link rel="stylesheet" href="default.css">
<h1>My first CSS-only redesign</h1>
<p>I’ve read about this on a few sites but today I’m actually
doing it: separating concerns and avoiding anything in the HTML of
my website that is presentational.
<p>It’s awesome!
实体引用
在html页面中避免使用实体引用。
如果你的文件是utf-8编码,就不需要使用像 —, ”, or ☺的实体引用。
不推荐的写法:
忽略一些可选的标签,比如
不推荐的写法:
<!DOCTYPE html>
<html>
<head>
<title>Spending money, spending bytes</title>
</head>
<body>
<p>Sic.</p>
</body>
</html>
推荐的写法:
<!DOCTYPE html>
<title>Saving money, saving bytes</title>
<p>Qed.
html5的文档,可以忽略head、body标签。
所有可忽略的标签,可以看《 HTML5 specification 》,
type属性
样式和脚本引用可以忽略type属性。
不推荐的写法:
html格式规则
常规格式每一块、每一列表、每一表格元素都需要另起一行,并缩进每个子元素。
<blockquote>
<p><em>Space</em>,
the final frontier.</p>
</blockquote>
<ul>
<li>Moe
<li>Larry
<li>Curly
</ul>
<table>
<thead>
<tr>
<th scope="col">Income</th>
<th scope="col">Taxes</th>
<tbody>
<tr>
<td>$ 5.00</td>
<td>$ 4.50</td>
</table>
css样式规则
css验证尽可能验证css的合法性,可以使用 W3C CSS validator。
id和class名
使用富有含义和通用的id和class名。
(ps:明河经常听周围的同事感慨,取好名字,也是个学问,有时候有些命名会让你很纠结,但好的命名的确可以提高可读性和可维护性。)
使用功能性和通用性的命名方式减少文档或模板的不必要的改动。
不推荐的写法:
id和class的命名在保持语义性的同时尽可能的短。
不推荐的写法:
选择器
避免出现多余的祖先选择器。(存在性能上的差异问题,可以看 performance reasons)
避免出现元素标签名作为选择器的一部分。
不推荐的写法:
不推荐的写法:
0和单位
属性值为0时,忽略单位。
使用url()时忽略刮号中的”"。
不推荐的写法:
给选择器样式名增加前缀(可选)。
在大的项目(多人协作)中使用前缀可以减少样式冲突,同时可以明确选择器归属含义。
id和class名的分隔符
单词使用“-”来连接。
不推荐的写法:
尽可能地避免使用hack的方式解决浏览器样式兼容性问题。
(ps:明河觉得这个很难,毕竟IE横在那里。)
尽量避免使用CSS filters。
css格式规则
css属性按字母顺序书写(PS:排序忽略浏览器前缀,比如-moz-,-webkit-)
不可缺少的;
不推荐的写法:
不推荐的写法:
不推荐的写法:
相关文章推荐
- 谷歌的HTML / CSS规范指南
- 编写灵活、稳定、高质量的HTML和css代码规范指南
- google的html/css规范指南
- HTML和CSS高级指南之六——jQuery
- 写给自己看的HTML、CSS、XHTML指南 六
- 写给自己看的HTML、CSS、XHTML指南 七
- HTML&CSS基础篇之六:HTML标准、规范
- 书籍推荐--《HTML 5与CSS 3权威指南》
- HTML+CSS编写规范
- HTML和CSS高级指南——定位详解
- Google HTML/CSS代码风格指南(中文版)
- Google HTML/CSS代码风格指南(中文版)
- Batsing的网页编程规范(HTML/CSS/JS/PHP)
- 【转】前端工程师必须了解的 谷歌 HTML/CSS 规范
- 简明 HTML CSS 开发规范 (转自“清清月儿”)
- 简明 HTML CSS 开发规范
- HTML CSS 编码规范
- HTML结构化:CSS布局入门指南
- HTML和CSS网页标准指南
- HTML结构化:实践DIV+CSS网页布局入门指南