欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    web前端开发规范标准.docx

    • 资源ID:2573047       资源大小:24.06KB        全文页数:20页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    web前端开发规范标准.docx

    1、web前端开发规范标准Web前端开发规手册一、规目的1.1概述.1二、文件规2.1文件命名规则.12.2文件存放位置.22.3 html书写规.22.4 css书写规.72.5 JavaScript书写规.122.6图片规.192.7注释规.20 2.8 css浏览器兼容.21一、规目的1.1概述为提高团队协作效率,便于后台人员添加功能及前端后期优化维护,输出高质量的文档,特制订此文档.本规文档一经确认,前端开发人员必须按本文档规进行前台页面开发.本文档如有不对或者不合适的地方请及时提出,经讨论决定后可以更改此文档.二、文件规2.1文件命名规则文件夹和文件名一律全部用小写英文单词,禁止出现简拼

    2、、拼音、数字、无意义的命名,英文单词尽量使用一个进行描述,简洁易懂;多个单词用驼峰命名法。2.2文件存放位置cn存放中文HTML文件en存放英文HTML文件flash存放Flash文件images存放图片文件imagestudio存放PSD源文件flashstudio存放flash源文件inc存放include文件library存放DW库文件media存放多媒体文件project存放工程项目资料temp存放客户原始资料js存放JavaScript脚本css存放CSS文件 2.3 html书写规 为每个HTML页面的第一行添加标准模式(standard mode)的声明,确保在每个浏览器中拥有一

    3、致的展现。 文档类型声明统一为HTML5声明类型,编码统一为UTF-8。中添加信息。/作者/网页描述/关键字,“,”分隔/设定网页的到期时间。一旦网页过期,必须到服务器上重新调阅/禁止浏览器从本地机的缓存中调阅页面容/用来防止别人在框架里调用你的页面/跳转页面,5指时间停留5秒 网页搜索机器人向导。用来告诉搜索机器人哪些页面需要索引,哪些页面不需要索引/content的参数有all,none,index,noindex,follow,nofollow,默认是all/收藏图标/网页不会被缓存IE支持通过特定标签来确定绘制当前页面所应该采用的IE版本。除非有强烈的特殊需求,否则最好是设置为edge

    4、mode ,从而通知IE采用其所支持的最新的模式。非特殊情况下CSS样式文件外链至HEAD之间,JAVASCRIPT文件外链至页面底部。 引入JAVASCRIPT库文件,文件名须包含库名称及版本号及是否为压缩版。jQuery-1.8.3.min.js引入JAVASCRIPT插件, 文件名格式为库名称+.+插件名称。jQuery.cookie.jsHTML属性应当按照以下给出的顺序依次排列,来确保代码的易读性。Classid 、 namedata-*src、for、 type、 hreftitle、altaria-*、 role避免使用中文拼音尽量简易并要求语义化。CLASS - nHeadTi

    5、tle - CLASS遵循小驼峰命名法(little camel-case)ID - n_head_title - ID遵循名称+_NAME - N_Head_Title - NAME属性命名遵循首个字母大写+_当JAVASCRIPT获取单个元素时,通常使用document.getElementById来获取dom元素,document.getElementById兼容所有浏览器,但IE浏览器会混淆元素的ID和NAME属性,所以要区分ID和NAME命名。特殊符号应使用转意符。 - 空格 -含有描述性表单元素(INPUT,TEXTAREA)添加LABEL。 测试 多用无兼容性问题的HTML置标签

    6、,比如span、em、strong、optgroup、label等,需要自定义html标签属性时,首先考虑是否存在已有的合适标签可替换,如果没有,可使用须以“data-”为前缀来添加自定义属性,避免使用其他命名方式。 语义化HTML。 尽可能减少嵌套。 书写地址时避免重定向。href=.kahn1990./ /即在URL地址后面加“/”HTML中对于属性的定义,确保全部使用双引号,绝不要使用单引号2.4 css 书写规 为了欺骗W3C的验证工具,可将代码分为两个文件,一个是针对所有浏览器,一个只针对IE。即将所有符合W3C的代码写到一个文件中,而一些IE中必须而又不能通过W3C验证的代码(如:

    7、cursor:hand;)放到另一个文件中,再用下面的方法导入。!-if IE CSS样式新建或修改尽量遵循以下原则。根据新建样式的适用围分为三级:全站级、产品级、页面级。尽量通过继承和层叠重用已有样式。不要轻易改动全站级CSS。改动后,要经过全面测试。CSS属性显示顺序。显示属性元素位置元素属性元素容属性CSS书写顺序。.header /* 显示属性 */ display | visibility list-style position top | right | bottom | left z-index clear float/* 自身属性 */ width max-width | mi

    8、n-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; /* S

    9、afari和Chrome */border-radius: 15px; /* Opera 10.5+, 以及使用了IE-CSS3的IE浏览器 */标准属性使用选择器时,命名比较短的词汇或者缩写的不允许直接定义样式。.hd,.bd,.td;/如这些命名可用上级节点进行限定。.recommend-mod .hd多选择器规则之间换行,即当样式针对多个选择器时每个选择器占一行。button.btn,input.btn,inputtype=button ;优化CSS选择器。#header a color: #444; ;/*CSS选择器是从右边到左边进行匹配*/浏览器将检查整个文档中的所有和每个的父元素

    10、,并遍历文档树去查找ID为header的祖先元素,如果找不到header将追溯到文档的根节点,解决方法如下。避免使用通配规则和相邻兄弟选择符、子选择符,、后代选择符、属性选择符等选择器不要限定id选择符,如div#header(提权的除外)不要限定类选择器,如ul.recommend(提权的除外)不要使用 ul li a 这样长的选择符避免使用标签子选择符,如#header li a使用z-index属性尽量z-index的值不要超过150(通用组的除外),页面中的元素容的z-index不能超过10(提示框等模块除外但维持在150以下),不允许直接使用(9999999)之间大值。尽量避免使用C

    11、SS Hack。property:value; /* 所有浏览器 */+property:value; /* IE7 */_property:value; /* IE6 */*property:value; /* IE6/7 */property:value9; /* IE6/7/8/9,即所有IE浏览器 */* html selector ; /* IE6 */*:first-child+html selector ; /* IE7 */htmlbody selector ; /* 非IE6 */-moz-document url-prefix() ; /* firefox */media

    12、all and (-webkit-min-device-pixel-ratio:0) ; /* saf3+/chrome1+ */media all and (-webkit-min-device-pixel-ratio:10000),not all and (-webkit-min-device-pixel-ratio:0) ; /* opera */media screen and (max-device-width: 480px) ; /* iPhone/mobile webkit */避免使用低效的选择器。body * ;ul li a ;#footer h3 ;ul#top_blue

    13、_nav ;#searbar span.submit a ; /* 反面示例 */六个不要三个避免一个使用。不要在标签上直接写样式不要在CSS中使用expression不要在CSS中使用import不要在CSS中使用!important不要在CSS中使用“*”选择符不要将CSS样式写为单行避免使用filter避免使用行(inline)样式避免使用“*”设置margin: 0; padding: 0;使用after或overflow的方式清浮动减少使用影响性能的属性。position:absolute;float:left;/如这些定位或浮动属性减少在CSS中使用滤镜表达式和图片repeat,尤

    14、其在body当中,渲染性能极差, 如果需要用repeat的话,图片的宽或高不能少于8px。2.5 javaScript书写规 命名规。常量名 全部大写并单词间用下划线分隔 如:CSS_BTN_CLOSE、TXT_LOADING对象的属性或方法名 小驼峰式(little camel-case) 如:init、bindEvent、updatePosition 示例:Dialog.prototype = init: function () , bindEvent: function () , updatePosition: function () ;类名(构造器) -小驼峰式但首字母大写 -如:Cu

    15、rrent、DefaultConfig函数名 -小驼峰式 -如:current()、defaultConfig()变量名 -小驼峰式 -如:current、defaultConfig私有变量名 -小驼峰式但需要用_开头 -如:_current、_defaultConfig变量名的前缀 -续代码格式。()前后需要跟空格=前后需要跟空格,后面需要跟空格JSON对象需格式化对象参数if、while、for、do语句的执行体用括起来格式如下。if (a=1) /代码;避免额外的逗号。var arr = 1,2,3,;for-in循环体中必须用hasOwnProperty方法检查成员是否为自身成员,避免

    16、来自原型链上的污染。长语句可考虑断行。TEMPL_SONGLIST.replace(TABLE, daresults) .replace(PREV_NUM, prev) .replace(NEXT_NUM, next) .replace(CURRENT_NUM, current) .replace(TOTAL_NUM, da.page_total);为了避免和JSLint的检验机制冲突,“.”或“+”这类操作符放在行尾。TEMPL_SONGLIST.replace(TABLE, daresults). replace(PREV_NUM, prev). replace(NEXT_NUM, nex

    17、t). replace(CURRENT_NUM, current). replace(TOTAL_NUM, da.page_total);如果模块代码中,使用其它全局变量想跳过JSLint的检查,可以在该文件中加入/*global*/声明。/*global alert: true, console: true, top: true, setTimeout: true */使用严格的条件判断符。用=代替=,用!=代替!=,避免掉入=造成的陷阱在条件判断时,这样的一些值表示false。nullundefined与null相等字符串数字0NaN在=时,则会有一些让人难以理解的陷阱。(function

    18、 () var undefined; undefined = null; / true 1 = true; /true 2 = true; / false 0 = false; / true 0 = ; / true NaN = NaN;/ false = false; / true = !; / true)();对于不同类型的 = 判断,有这样一些规则,顺序自上而下:undefined与null相等一个是number一个是string时,会尝试将string转换为number尝试将boolean转换为number0或1尝试将Object转换成number或string而这些取决于另外一个对比

    19、量,即值的类型,所以对于0、空字符串的判断,建议使用=。=会先判断两边的值类型,类型不匹配时为false。下面类型的对象不建议用new构造。new Numbernew Stringnew Booleannew Object /用代替new Array /用代替引用对象成员用obj.prop代替objprop,除非属性名是变量。从number到string的转换。/* 推荐写法*/var a = 1;typeof(a); /numberconsole.log(a); /1var aa=a+;typeof(aa); /stringconsole.log(aa); /1/* 不推荐写法*/new S

    20、tring(a)或a.toString()从string到number的转换,使用parseInt,必须显式指定第二个参数的进制。/* 推荐写法*/var a = 1;var aa = parseInt(a,10);typeof(a); /stringconsole.log(a); /1typeof(aa); /numberconsole.log(aa); /1从float到integer的转换。/* 推荐写法*/Math.floor/Math.round/Math.ceil/* 不推荐写法*/parseInt字符串拼接应使用数组保存字符串片段,使用时调用join方法。避免使用+或+=的方式拼

    21、接较长的字符串,每个字符串都会使用一个小的存片段,过多的存片段会影响性能。/*推荐的拼接方式array的push、join*/var str=, list=测试A,测试B;for (var i=0 , len=list.length; i len; i+) str.push( + listi + );console.log(str.join(); /测试A测试B/* 不推荐的拼接方式+=*/var str = , list=测试A,测试B;for (var i = 0, len = list.length; i len; i+) str+= + listi + ;console.log(str); /测试A测试B尽量避免使用存在兼容性及消耗资源的方法或属性。不要使用with,void,evil,eval_r,innerText注重HTML分离, 减小reflow, 注重性能。2.6图片规 命名应用小写英文、数字、_组合,便于团队其他成员理解。header_btn.gifheader_btn2.gif


    注意事项

    本文(web前端开发规范标准.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开