- 65.65 KB
- 10页
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
'文豆Web前端规范手册V1.2文豆Web前端开发规范手册更新记录版本号日期更新内容修订V1.02010-05-01创建文档宋敏鹏V1.12011-02-01修改细节宋敏鹏V1.22015-05-28修改细节宋敏鹏10
文豆Web前端规范手册V1.2文豆WEB前端开发规范手册1、规范目的32、基本准则33、文件规范33.1目录结构33.2html文件命名43.3css文件命名43.4js文件命名44、HTML书写规范44.1编码44.2文档类型声明44.3语法44.4文件引入54.5语义化html55、CSS书写规范65.1编码65.2协作开发及分工65.3CSS语法65.4class与id命名65.6属性列举75.7CSS优化76、JAVASCRIPT书写规范76.1编码76.2语法76.3变量命名76.4变量声明87、注释规范87.1html注释87.2css注释87.3JavaScript注释88、图片规范89、开发测试工具约定910
文豆Web前端规范手册V1.21、规范目的为提高团队协作效率,便于后台开发人员套页面及前端后期优化维护,输出高质量的文档,特制订此文档。本规范文档一经确认,前端开发人员必须按本文档规范进行前端页面制作。本文档如有不对或者不合适的地方请及时提出,经讨论决定后方可更改。2、基本准则编写符合w3c标准,语义化的html,实现结构、表现、行为分离;浏览器兼容性优良(暂定IE、chrome、firefox)。页面性能方面,代码要求简洁有序,尽可能的减小服务器负载,注重css代码质量,保证浏览器能最快的解析。3、文件规范3.1目录结构css、js、images文件均归档至约定的目录中。约定目录为://index.html/images//css/base.css/js/common.jsjquery-1.9..min.js可根据需要创建子目进行分类。3.2html文件命名英文命名,后缀为.html3.3css文件命名英文命名,后缀为.css。公用css请放在base.css中,重置样式浏览器内置样式的css为reset.css,其它css文件根据页面名称命名。10
文豆Web前端规范手册V1.23.4js文件命名英文命名,后缀为.js。公用js请放在common.js中,其他依模块需求命名。注:所有文件命名,由多个单词组成时,采用中划线连接方式,比如:账号模型文件account-model.js,错误报告页面error-report.html等。4、html书写规范4.1编码统一为utf-8编码。 4.2文档类型声明HTML5声明类型,移动端页面必须用这个类型。4.3语法代码书写时实现层次分明的缩进。所有的标签、属性、属性命名必须由小写字母及连接线(-)组成,且所有标签必须闭合;属性值必须用双引号。不要在自动闭合标签结尾处使用斜线(HTML5规范指出他们是可选的)。充分利用无兼容性问题的html自身标签,比如em,strong,label等。需要为html元素添加自定义属性的时候,首先要考虑有没有默认的已有的合适标签去设置,如果没有,可以使用须以"data-"为前缀来添加自定义属性(可用jquery的data()函数获取属性值),避免使用"data:"等其他命名方式。在标签中尽量避免使用style属性,即style="..."。4.4文件引入一般情况下CSS样式文件必须外链至...之间;一般情况下javascript文件必须外链至页面底部。引入js库文件,文件名须包含库名称及版本号及是否为压缩版,比如jquery-1.9.2.min.js;引入插件,文件名格式为库名称.插件名称,比如jQuery.cookie.js。10
文豆Web前端规范手册V1.24.5语义化html如标题根据重要性用h*(同一页面只能有一个h1),段落标记用p,列表用ul,内联元素中不可嵌套块级元素。尽可能减少div嵌套等,如:完全可以用以下代码替代: ;尽量遵循HTML标准和语义,但是不应该以浪费实用性作为代价。任何时候都要用尽量小的复杂度和尽量少的标签来解决问题。书写链接地址时,必须避免重定向,例如:href="http://www.wengdo.com/",即须在URL地址后面加上“/”;必须为含有描述性表单元素(input,textarea)添加label,如:
欢迎访问XXX, 您的用户名是
用户名
欢迎访问XXX, 您的用户名是用户名
姓名:
须写成:能以背景形式呈现的图片,尽量写入css样式中;重要图片必须加上alt属性;给重要的元素和截断的元素加上title;给区块代码及重要功能(比如循环)加上注释,方便后台添加功能;特殊符号使用:尽可能使用html实体字符。4.6属性顺序HTML属性应该按照特定的顺序出现以保证易读性。idclassnamedata-*src,for,type,hreftitle,alt5、css书写规范5.1编码统一为utf-8。10 文豆Web前端规范手册V1.25.2协作开发及分工根据各个模块,根据页面相似性,事先写好大体框架文件,分配给前端人员实现内部细节;公用css文件base.css在制定框架时完成,协作开发过程中,每个页面请务必都要引入,此文件包含头部底部样式,此文件不可随意修改;每个页面必须引入reset.css文件。5.3CSS语法使用组合选择器时,保持每个独立的选择器占用一行。声明块的右括号应该另起一行。每条声明应该只占用一行来保证错误报告更加准确。尽可能使用短的十六进制数值,例如使用#fff替代#ffffff。不要为0指明单位,比如使用margin:0;而不是margin:0px。所有声明应该以分号结尾。虽然最后一条声明后的分号是可选的,但是如果没有他,你的代码会更容易出错。所有的十六进制值都应该使用小写字母,例如#fff。因为小写字母有更多样的外形,在浏览文档时,他们能够更轻松的被区分开来。为选择器中的属性取值添加引号,例如input[type="text"]。他们只在某些情况下可有可无,所以都使用引号可以增加一致性。5.4class与id命名大的框架命名比如header/footer/wrapper/left/right之类的统一命名.其他样式名称由小写英文字母、数字、链接线来组合命名,如i-comment,width-200;避免使用中文拼音,尽量使用简易的单词组合;总之,命名要语义化,简明化。5.5css属性书声明顺序建议遵循:布局定位属性-->自身属性-->文本属性-->其他属性.此条可根据自身习惯书写,但尽量保证同类属性写在一起。5.6属性列举布局定位属性主要包括:display&list-style&position(相应的top,right,bottom,left)&float&clear&visibility&overflow。自身属性主要包括:width&height&margin&padding&border&background。文本属性主要包括:color&font&text-decoration&text-align&vertical-align&white-space。所列出的这些属性只是最常用到的,并不代表全部;书写代码前,考虑并提高样式重复使用率。10 文豆Web前端规范手册V1.25.7CSS优化css属性的尽量简写,移除空的css规则,如a{}。中文字体名,请务必转码成unicode码,以避免编码错误时乱码;背景图片请尽可能使用sprite技术,减小http请求,考虑到多人协作开发,sprite按模块制作;减少使用影响性能的属性,比如position:absolute||float。正确使用显示属性:如display:line不要和width,height,float,margin,padding同时使用;display:line-block不要和float同时使用。6、Javascript书写规范6.1编码文件编码统一为utf-8。6.2语法行代码结束必须有分号,字符常量一般情况下统一使用""单引号。6.3变量命名驼峰式命名。原生JavaScript变量要求是纯英文字母,首字母须小写,如myTestVar;另,要求变量集中声明,避免全局变量。常量命名:采用大写字母,下划线连接的方式,如MAX_COUNT。类命名:首字母大写,驼峰式命名,如MyTestClass。函数命名:首字母小写驼峰式命名,如myTestFun()。命名语义化,尽可能利用英文单词或其缩写。6.4变量声明所有函数内变量声明放在函数内头部,只使用一个var(多了JSLint报错),一个变量一行。6.5后期优化JavaScript非注释类中文字符打包成独立的语言包,以避免js混淆后出现乱码;尽量将js压缩或混淆。代码结构明了,加适量注释.提高函数重用率。尽量避免使用存在兼容性及消耗资源的方法或属性,比如eval()。10 文豆Web前端规范手册V1.27、注释规范7.1html注释注释格式,"--"只能在注释的始末位置,不可置入注释文字区域;7.2css注释注释格式/*这儿是注释*/;7.3JavaScript注释单行注释使用://这儿是单行注释多行注释使用:/*多行注注释*/8、图片规范所有页面元素类图片均放入images文件夹;图片格式仅限于gif、png、jpg;命名全部用小写英文字母、数字、连接线的组合,其中不得包含汉字、空格、特殊字符;尽量用易懂的词汇,便于团队其他成员理解;另外命名分头尾两部分,用连接线链接,比如ad-left01.gif||btn-submit.gif;在保证视觉效果的情况下选择最小的图片格式与图片质量,以减少页面加载时间。运用csssprite技术集中小的背景图或图标,减小页面http请求,但注意,请务必在对应的csssprite的psd源文件中划参考线,并保存至images/psd目录下.用png图片做图片时, 要求图片格式为png-8格式,若png-8实在影响图片质量或其中有半透明效果, 请为ie6单独定义背景:_background:none;_filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=crop, src=’images/bg.png’);9、开发测试工具约定建议使用Sublime||DW,亦可根据自己喜好选择,但须遵循如下原则:不可利用IDE的视图模式"画"代码;不可利用IDE生成相关功能代码,比如DW内置的一些功能js;代码必须格式化,比如缩进和排版;10 文豆Web前端规范手册V1.2测试工具:前期开发仅测试FireFox-->IE8,后期优化时加入Chrome&Safari;建议测试顺序:FireFox-->IE8--->Chrome-->Safari,建议安装firebug及IETabPlus插件.10、其他规范开发过程中严格按分工完成页面,以提高css复用率,避免重复开发。减小沉冗代码,书写所有人都可以看的懂的代码。简洁易懂是一种美德.为用户着想,为服务器着想。附:DIV+CSS命名规范1.CSSID的命名外 套: wrap主导航: mainnav子导航: subnav页 脚: footer整个页面: content页 眉: header页 脚: footer标签: label标 题: title主导航: mainbav(globalnav)顶导航: topnav边导航: sidebar左导航: left-sidebar右导航: right-sidebar旗 志: logo标 语: banner菜单内容:menu-content菜单容器: menu-container子菜单: submenu边导航图标:sidebar-icon注释: note面包屑: breadcrumb(即页面所处位置导航提示)容器: container内容: content搜索: search登陆: login功能区: shop(如购物车,收银台)10 文豆Web前端规范手册V1.2当前的 current2.另外在编辑样式表时可用的注释可这样写:<--Footer-->内容区<--EndFooter-->3.样式文件命名基本的base.css布局,版面layout.css专栏columns.css文字font.css打印样式print.css主题themes.css10'