web开发规范文档
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浏览器 *//标准属性 <span style="font-size: 15px;"><strong>使用<code>z-index</code>属性尽量<code>z-index</code>的值不要超过150(通用组的除外),页面中的元素内容的<code>z-index</code>不能超过10(提示框等模块除外但维持在150以下),不允许直接使用(999~9999)之间大值。</strong></span> |
减少使用影响性能的属性。
1 2 3 |
position:absolute; float:left;//如这些定位或浮动属性 <span style="font-size: 15px;"><strong>减少在<code>CSS</code>中使用滤镜表达式和图片repeat,尤其在body当中,渲染性能极差, 如果需要用repeat的话,图片的宽或高不能少于8px。</strong></span> |
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 |
<span style="font-size: 16px;">测试工具: 前期开发仅测试FireFox & IE8 & IE9 & Opera &Chrome & Safari</span> |