Web前端开发规范文档

时间:2023-03-08 15:17:34
Web前端开发规范文档

Web前端开发规范文档

规范目的:

  使开发流程更加规范化。

通用规范:

  • TAB键用两个空格代替(windos下tab键占四个空格,linux下TAB键占八个空格)。

  • CSS样式属性或者JAVASCRIPT代码后加“;”方便压缩工具“断句”。
  • 文件内容编码均统一为UTF-8

  • CSSJAVASCRIPT中的非注释类中文字符须转换成unicode编码使用,以避免编码错误时乱码显示。

文件规范:

  • 文件名用英文单词,多个单词用驼峰命名法。

  • 一些浏览器会将含有这些词的作为广告拦截,文件命名、ID、CLASS等所有命名避免以下词汇。
  • `ad`、`ads`、`adv`、`banner`、`sponsor`、`gg`、`guangg`、`guanggao`等

html书写规范:

  

文档类型声明统一为HTML5声明类型,编码统一为UTF-8。

<meta charset="UTF-8">

 

 <HEAD>中添加信息。

<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文件外链至页面底部。

<!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库文件,文件名须包含库名称及版本号及是否为压缩版。

jQuery-1.8.3.min.js
  

引入JAVASCRIPT插件, 文件名格式为库名称+.+插件名称。

jQuery.cookie.js

 

命名方式:

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书写顺序

.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
}; 

 兼容多个浏览器时,将标准属性写在底部

-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)之间大值。 

 

减少使用影响性能的属性。

position:absolute;
float:left;//如这些定位或浮动属性
减少在CSS中使用滤镜表达式和图片repeat,尤其在body当中,渲染性能极差, 如果需要用repeat的话,图片的宽或高不能少于8px。

javaScript书写规范:

代码格式

"()"前后需要跟空格
"="前后需要跟空格
","后面需要跟空格
JSON对象需格式化对象参数
if、while、for、do语句的执行体用"{}"括起来

"{}"格式如下

if (a==1) {
//代码
}; 

下面类型的对象不建议用new构造

new Number
new String
new Boolean
new Object //用{}代替
new Array //用[]代替

图片规范:

命名应用小写英文数字_组合,便于团队其他成员理解

header_btn.gif
header_btn2.gif

页面元素类图片均放入img文件夹,测试用图片放于img/testimg文件夹,psd源图放入psdimg文件夹。

图片格式仅限于gifpngjpg等。用png图片做图片时,要求图片格式为png-8格式。

注释规范:

JAVASCRIPT、CSS文件注释需要标明作者、文件版本、创建/修改时间、重大版本修改记录、函数描述、文件版本、创建或者修改时间、功能、作者等信息。
/* 注释块 */

 

开发及测试工具约定:

测试工具: 前期开发仅测试FireFox & IE8 & IE9 & Opera &Chrome & Safari