Web前端开发规范文档
规范目的:
使开发流程更加规范化。
通用规范:
-
TAB键用两个空格代替(
windos
下tab键占四个空格,linux
下TAB键占八个空格)。 CSS
样式属性或者JAVASCRIPT
代码后加“;”方便压缩工具“断句”。
-
文件内容编码均统一为
UTF-8
。 CSS
、JAVASCRIPT
中的非注释类中文字符须转换成unicode编码使用,以避免编码错误时乱码显示。
文件规范:
-
文件名用英文单词,多个单词用驼峰命名法。
- 一些浏览器会将含有这些词的作为广告拦截,文件命名、ID、CLASS等所有命名避免以下词汇。
`ad`、`ads`、`adv`、`banner`、`sponsor`、`gg`、`guangg`、`guanggao`等
html书写规范:
文档类型声明
统一为HTML5声明类型,编码
统一为UTF-8。
1
|
<meta charset= "UTF-8" > |
<HEAD>
中添加信息。
1
2
3
4
5
6
7
8
9
10
|
<meta name= "author" content= "smile@kang.cool" > //作者 <meta name= "description" content= "hello" > //网页描述 <meta name= "keywords" content= "a,b,c" > //关键字,“,”分隔 <meta http-equiv= "expires" content= "Wed, 26 Feb 1997 08:21:57 GMT" > //设定网页的到期时间。一旦网页过期,必须到服务器上重新调阅 <meta http-equiv= "Pragma" content= "no-cache" > //禁止浏览器从本地机的缓存中调阅页面内容 <meta http-equiv= "Window-target" content= "_top" > //用来防止别人在框架里调用你的页面 <meta http-equiv= "Refresh" content= "5;URL=http://kahn1990.com/" >//跳转页面,5指时间停留5秒 网页搜索机器人向导。用来告诉搜索机器人哪些页面需要索引,哪些页面不需要索引 <meta name= "robots" content= "none" > //content的参数有all,none,index,noindex,follow,nofollow,默认是all <link rel= "Shortcut Icon" href= "favicon.ico" > //收藏图标 <meta http-equiv= "Cache-Control" content= "no-cache, must-revalidate" > //网页不会被缓存 |
非特殊情况下CSS
样式文件外链至HEAD之间,JAVASCRIPT
文件外链至页面底部。
1
2
3
4
5
6
7
8
9
10
11
12
|
<!DOCTYPE html> <html> <head> <link rel= "stylesheet" href= "css/main.css" > </head> <body> <!-- 逻辑代码 --> <!-- 逻辑代码底部 --> <script src= "lib/jquery/jquery-2.1.1.min.js" ></script> </body> </html> |
引入JAVASCRIPT
库文件,文件名须包含库名称及版本号及是否为压缩版。
1
2
|
jQuery-1.8.3.min.js |
引入JAVASCRIPT
插件, 文件名格式为库名称+.
+插件名称。
1
|
jQuery.cookie.js |
命名方式:
1
2
3
4
|
CLASS --> nHeadTitle --> CLASS遵循小驼峰命名法(little camel- case ) ID --> n_head_title --> ID遵循名称+_ NAME --> N_Head_Title --> NAME属性命名遵循首个字母大写+_ <div class = "nHeadTitle" id= "n_head_title" name= "N_Head_Title" ></div> |
css书写规范:
CSS
书写顺序
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
.header { /* 显示属性 */ display || visibility list-style position top || right || bottom || left z-index clear float /* 自身属性 */ width max-width || min-width height max-height || min-height overflow || clip margin padding outline border background /* 文本属性 */ color font text-overflow text-align text-indent line-height white-space vertical-align cursor content }; |
兼容多个浏览器时,将标准属性写在底部
1
2
3
4
|
-moz-border-radius: 15px; /* Firefox */ -webkit-border-radius: 15px; /* Safari和Chrome */ border-radius: 15px; /* Opera 10.5+, 以及使用了IE-CSS3的IE浏览器 */ /标准属性 使用z-index属性尽量z-index的值不要超过150(通用组的除外),页面中的元素内容的z-index不能超过10(提示框等模块除外但维持在150以下),不允许直接使用(999~9999)之间大值。 |
减少使用影响性能的属性。
1
2
3
|
position:absolute; float :left; //如这些定位或浮动属性 减少在CSS中使用滤镜表达式和图片repeat,尤其在body当中,渲染性能极差, 如果需要用repeat的话,图片的宽或高不能少于8px。 |
javaScript书写规范:
代码格式
1
2
3
4
5
|
"()" 前后需要跟空格 "=" 前后需要跟空格 "," 后面需要跟空格 JSON对象需格式化对象参数 if 、 while 、 for 、 do 语句的执行体用 "{}" 括起来 |
"{}"格式如下
1
2
3
|
if (a==1) { //代码 }; |
下面类型的对象不建议用new构造
1
2
3
4
5
|
new Number new String new Boolean new Object //用{}代替 new Array //用[]代替 |
图片规范:
命名应用小写英文
、数字
、_
组合,便于团队其他成员理解
1
2
|
header_btn.gif header_btn2.gif |
页面元素类图片均放入img
文件夹,测试用图片放于img/testimg
文件夹,psd源图放入psdimg
文件夹。
图片格式仅限于gif
、png
、jpg
等。用png
图片做图片时,要求图片格式为png-8
格式。
注释规范:
1
|
JAVASCRIPT、CSS文件注释需要标明作者、文件版本、创建/修改时间、重大版本修改记录、函数描述、文件版本、创建或者修改时间、功能、作者等信息。 |
/* 注释块 */
开发及测试工具约定:
1
|
测试工具: 前期开发仅测试FireFox & IE8 & IE9 & Opera &Chrome & Safari |