摘要
优秀的项目源码,即使是多人开发,看代码也如出一人之手。统一的编码规范,可使代码更易于阅读,易于理解,易于维护
HTML 规范
缩进
统一两个空格缩进
命名规范
class 应以功能或内容命名,不以表现形式命名;
class 与 id 单词字母小写,多个单词组成时,采用中划线-分隔;
使用唯一的 id 作为 Javascript hook, 同时避免创建无样式信息的 class;
DOCTYPE 声明
HTML 文件必须加上 DOCTYPE 声明,并统一使用 HTML5 的文档声明:
1
2
meta 标签
统一使用 “UTF-8” 编码
1
2
SEO 优化
1
2
3
4
5
6
7
优先使用 IE 最新版本和 Chrome
1
2
为移动设备添加视口
1
2
3
4
5
禁止自动识别页面中有可能是电话格式的数字
1
2
团队约定:
pc 端:
web前端开发资源Q-q-u-n: 767273102 ,内有免费开发工具,零基础,进阶视频教程,希望新手少走弯路 1 2 3 4 5 6 移动端:1
2
3
4
标签
html 标签分为以下几类:
自闭合标签(self-closing),无需闭合。例如:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr 等 )
闭合标签(closing tag),需闭合 。例如:textarea、title、h、div、span 等
团队约定:
所有具有开始标签和结束标签的元素都必须要写上起止标签,某些允许省略开始标签或和束标签的元素亦都要写上
自闭合标签不要加上结束标签
自定义标签的名字必须包含一个破折号(-),、和都是正确的名字,而和<foo_bar>是不正确的。这样的限制使得 HTML 解析器可以分辨那些是标准元素,哪些是自定义元素
自定义标签必须写上开始标签和闭合标签
尽量减少标签数量
元素属性
元素属性值使用双引号语法
推荐:
1
2
不推荐:
1
2
3
代码嵌套
块元素可以包含内联元素或某些块元素,但内联元素却不能包含块元素,它只能包含其它的内联元素
标题和段落中不能包含块,如:h1、h2、h3、h4、h5、h6、p、dt
块与内联不能并列,块级元素与块级元素并列、内嵌元素与内嵌元素并列
有些标签是固定的嵌套规则,比如 ul 包含 li、ol 包含 li、dl 包含 dt 和 dd 等等。
灵活使用伪类
不要让非内容信息污染了你的 HTML,打乱了 HTML 结构。可以使用:before、:after 等伪类元素
推荐:
HTML 代码
See the square next to me?1
2
3
4
5
CSS 代码:
/* We use a :before pseudo element to solve the design problem of placing a colored square in front of the text content */
.text-box:before {
content: ‘’;
display: inline-block;
width: 1rem;
height: 1rem;
background-color: red;
}
1
2
3
4
5
6
7
8
9
不推荐:
HTML 代码:
See the square next to me?1
2
3
4
5
6
CSS 代码:
.text-box > .square {
display: inline-block;
width: 1rem;
height: 1rem;
background-color: red;
}
web前端开发资源Q-q-u-n: 767273102 ,内有免费开发工具,零基础,进阶视频教程,希望新手少走弯路
1
2
3
4
5
6
7
特殊符号必须使用转义符
符号 描述 转义符
空格
< 小于 <
大于 >
& 和 &
" 引号 "
纯数字输入框
使用 type=“tel” 而不是 type=“number”
1
2
类型属性
不需要为 CSS、JS 指定类型属性,HTML5 中默认已包含。
推荐:
1
2
3
不推荐:
1
2
3
注释规范
单行注释
http://auto.sohu.com/20190702/n554674959.shtml
http://yule.sohu.com/20190702/n554674959.shtml
http://astro.sohu.com/20190702/n554674959.shtml
http://mil.sohu.com/20190702/n554674959.shtml
http://news.sohu.com/20190702/n554674959.shtml
http://sports.sohu.com/20190702/n554674959.shtml
http://fun.sohu.com/20190702/n554674959.shtml
http://travel.sohu.com/20190702/n554674959.shtml
http://baobao.sohu.com/20190702/n554674959.shtml
http://acg.sohu.com/20190702/n554674959.shtml
http://gongyi.sohu.com/20190702/n554674959.shtml
一般用于简单的描述,如某些状态描述、属性描述等
注释内容前后各一个空格字符,注释位于要注释代码的上面,单独占一行
推荐:
1
2
3
不推荐:
1
2
3
4
5
6
模块注释
注释内容前后各一个空格字符
表示模块开始 表示模块结束,模块与模块之间相隔一行模块注释内部嵌套模块注释,
推荐:
<div class="mod_b">
...
</div>
<!-- /mod_b -->
<div class="mod_c">
...
</div>
<!-- /mod_c -->
段落 标题(h1~h6)
-
无序列表
- 有序列表