前端开发规范文档

简介: Web Front-end Development Document Specification(www.weyoo.cn) 1、文件管理规范 1) 资源文件目录 背景图片目录 图标目录 图片目录 临时图片目录 样式文件目录 ...

Web Front-end Development Document Specification(www.weyoo.cn)

1、文件管理规范

1) 资源文件目录

背景图片目录 图标目录 图片目录 临时图片目录 样式文件目录 脚本文件目录 flash文件目录 上传文件目录 静态文件目录
images/bg images/ico images/pic images/temp style js flash upload static

2) 文件夹及文件命名

用简短有意义的英文或者拼音(不能出现中文命名)来命名。
①文件夹命名规则: 全部小写。例如(emotions, download, mail)。
②html,js,css文件命名规则: 第一个单词首字母小写,之后每个单词首字母大写,html文件后缀名统一为.htm。例如(index.htm, customizeCity.htm, register.js, dateSelect.js, base.css, mapApply.css)。 
③图片命名规则: 第一个单词首字母小写,之后每个单词首字母大写,或者全部小写,单词间用下划线连接。例如(btn_sign.gif, bgTipBox.png)。

2、XHTML书写规范

  • 1) 文档类型声明统一为XHTML 1.0 Transitional;
  • 2) 编码统一为utf-8;
  • 3) 确保有Title,Description,Keywords等完整的meta标签。
  • 4) 引入JS库文件,文件名须包含库名称及版本号及是否为压缩版,比如jquery-1.7.1.min.js;引入插件,文件名格式为库名称 + 插件名称,比如jQuery.cookie.js;
  • 5) 非特殊情况下样式和脚本代码必须独立于xhtml代码于外部文件中,样式文件必须外链至<head>...</head>之间,渲染执行脚本必须外链至页面底部;
  • 6) 引入外部样式文件及脚本文件采用时间戳后缀,防止由于缓存问题导致页面不能及时更新;
  • 7) 书写时采用制表符缩进(大小为4);
  • 8) 编码必须遵循w3c标准,标签、属性及属性命名必须由小写字母及下划线数字组成,且所有标签必须闭合;属性值必须用双引号包括;
  • 9) 充分利用无兼容性问题的html自身标签,比如span,em,strong,label,等等;需要为html元素添加自定义属性的时候,首先要考虑下有没有默认的已有的合适标签去设置,如果没有,可以使用须以”data-”为前缀来添加自定义属性,避免使用”data:”等其他命名方式;
  • 10) 语义化html,如标题根据重要性用h1~h6(同一页面只能有一个h1),段落标记用p,列表用ul,内联元素中不可嵌套块级元素;
  • 11) 尽可能减少div嵌套;
  • 12) 必须为含有描述性表单元素(input,textarea)添加label;
  • 13) 能以背景形式呈现的图片,尽量写入css样式中;
  • 14) 图片必须加上alt属性;给重要的元素和截断的元素加上title;
  • 15) 不是标签一部分的特殊符号都用编码表示:比如<(<)&>(>)&空格()&»(»)等等;
  • 16) 给区块代码及重要功能(比如循环)加上合理的注释,方便后台添加功能:注释格式,‘–-’只能在注释的始末位置,不能出现2个或2个以上的"--";

3、CSS书写规范

  • 1) 编码统一为utf-8;
  • 2) 全局定义以及全站公共部分共用文件common.css,开发过程中,每个页面请务必都要引入,此文件包含reset,常用规则(链接、字体、隐藏、清浮动等)、布局、各种模块基本样式及头部底部样式,此文件不可随意修改;
  • 3) 选择符命名及其使用:
    ① 命名请尽量使用英文避免使用汉语拼音,使用驼峰式命名和划线命名法。如(searchBox, p_i_4_l, width200);驼峰式命名法用来区别不同的单词,划线命名法表示从属关系。命名要语义化,简明化,尽量使用简短的英文单词组合;
    ② id是唯一的并是父级的,class是可以重复的并是子级的,所以id一般使用在大的模块上,class可用在重复使用率高及子级中;
    ③ 严禁出现#id ul li(长度超过2以上的派生类)等类似选择器;允许.active .classname;减少使用基于元素的类选择器:div.classname;减少属性选择器:#id[title=weyoo]; ④ 严禁使用 “*” 选择符;
  • 4) CSS属性书写顺序尽量遵循:显示属性->盒模型->文字属性->排版->其他。例如:#searchBtn{display:block;position:abtolute;left:2px;top:0;width:50px;height:19px;border:1px solid #ccc;padding:5px 2px;font:Arial 12px/19px;text-align:center;vertical-align:middle;color:#666;background:#999;cursor:pointer;}
  • 5) 尽量使用高级语法简写代码:body{font:italic bold 12px/20px arial,sans-serif;} input{padding:2px 3px; border:1px solid #999};
  • 6) 书写代码前,考虑并提高样式重复使用率,归类class分组,以便通用性;
  • 7) 背景图片请尽可能使用sprite技术,减少http请求;
  • 8) 减少使用影响性能的属性,比如position:absolute||float;性能比较:“默认” 优于 “定位” 优于 “浮动”;
  • 9) 尽量不要使用expression等不兼容的属性;
  • 10) 尽量不使用hack写出兼容当前主流浏览器(ie6~ie9,firefox,chrome,safari,opera)的代码。例如:float元素的父元素不能指定clear属性,务必指定width属性(尽量使用em而不是px做单位),尽量不指定margin和padding等属性(可以在float元素内部嵌套一个标签来设置margin和padding)。
  • 11) 文件头部注释须标明作者及修改日期。必须为大区块样式添加合理注释;
  • 12) 测试完成后压缩合并css文件,力求降低http请求;

4、JavaScript书写规范

  • 1) 编码统一为utf-8;
  • 2) 常用功能函数统一写在公用js文件commonToolFn.js里;
  • 3) 书写时采用制表符缩进(大小为4);
  • 4) 常量所有字符大写,变量所有字符小写;类命名:首字母大写驼峰式命名.如CommonTool;函数命名:首字母小写驼峰式命名.如arrEach();
  • 5) 命名语义化,尽可能利用英文单词或其缩写;代码结构明了,提高函数重用率;
  • 6) 文件头部注释须标明作者及修改日期。函数注释须标明函数功能,参数及返回值;
  • 7) 书写过程过,每行代码结束必须有分号;
  • 8) 声明变量必须用var ,包括循环 遍历:如:for(var i=0;i<10;i+=1){},for(var value in obj){};注意减少全局变量的声明 避免变量混乱;
  • 9) 条件判断后执行代码块必须加花括号:if(){...};for(){...}
  • 10) 规范json书写:必须以花括号开始和结束;
  • 11) 测试完成后压缩合并JavaScript文件,力求降低http请求;

5、性能优化规范

  • 1) 由于大多都是操作DOM,所以在查找节点时务必书写高效的选择器(jQuery);
  • 2) 缓存频繁使用的对象、数组及相关的属性;
  • 3) 使脚本尽可能少地运行或者不运行(按需加载,比如选项卡数据在页面加载时只加载第一个选项卡的内容数据,其他选项卡异步提交加载);
  • 4) 合理的使用图片格式,并进行压缩优化,保持图片最佳视觉以及大小;
  • 5) 对于大数据,多屏页面进行数据延迟加载处理,以及图片预加载;

6、版本控制规范

  • 1) 代码提交前清理无关文件(比如缩略图缓存数据文件thumb.db等等);
  • 2) 对于CSS以及JS约定好的代码注释必须加上之后再提交到SVN,方便SVN自动更新文件编辑信息以及版本号;
  • 3) 变更文件(特别是模版文件以及重要的页面)比较大时最好做好备份工作,方便发布到正式线出现问题时快速撤回;
  • 4) 代码修改或提交前获取下最新版本,有规律的提交代码;签入代码前经过良好的测试;

7、开发调试工具

  • 1) 前端常用编辑器/IDE(开发);
  • 2) IDE自带/浏览器插件(调试);
  • 3) CSS,JS压缩工具;
  • 4) 其他辅助工具;
目录
相关文章
|
缓存 前端开发
前端代码整洁与规范之CSS篇
【4月更文挑战第2天】 前端代码整洁与规范之CSS篇
427 4
|
前端开发
914.【前端】Taro集成towxml渲染markdown文档
914.【前端】Taro集成towxml渲染markdown文档
1057 2
|
10月前
|
Dart 前端开发
【05】flutter完成注册页面完善样式bug-增加自定义可复用组件widgets-严格规划文件和目录结构-规范入口文件-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【05】flutter完成注册页面完善样式bug-增加自定义可复用组件widgets-严格规划文件和目录结构-规范入口文件-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
370 75
【05】flutter完成注册页面完善样式bug-增加自定义可复用组件widgets-严格规划文件和目录结构-规范入口文件-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
|
8月前
|
前端开发 Cloud Native Java
Java||Springboot读取本地目录的文件和文件结构,读取服务器文档目录数据供前端渲染的API实现
博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
Java||Springboot读取本地目录的文件和文件结构,读取服务器文档目录数据供前端渲染的API实现
|
前端开发 JavaScript API
前端代码书写规范
前端代码规范提升项目可维护性和团队协作效率。关注项目命名清晰简洁、一致性,组件命名使用驼峰式且具描述性。JS遵循4空格缩进,分号结束语句,CSS按逻辑排序,HTML注重语义化。注释要功能性、文档化且简洁。遵循规范能减少错误,增强团队沟通。
596 3
|
前端开发 JavaScript 开发工具
前端规范
前端规范
|
Web App开发 JavaScript 前端开发
2024年纯前端VUE在线编辑微软Office/金山WPS的Word/Excel文档
现在,随着数字化进程渗透到到各行各业,数据安全已经成为了数字化革命中的重要组成部分,而在线Office成在OA、ERP、文档系统中得到了广泛的应用,为我国的信息化事业也做出了巨大贡献。随着操作系统、浏览器及Office软件的不断升级和更新换代,加上国家对信息化、数字化系统要求的不断提升,一些厂家的WebOffice控件产品不断被淘汰出局,而现存的几个产品也存在以下几个问题:
1366 97
2024年纯前端VUE在线编辑微软Office/金山WPS的Word/Excel文档
|
前端开发 测试技术
如何从零到一建立前端规范
【10月更文挑战第6天】
272 2
|
监控 前端开发 开发者
前端代码规范 - 日志打印规范
前端代码规范 - 日志打印规范
|
缓存 JavaScript 前端开发

热门文章

最新文章

  • 1
    前端如何存储数据:Cookie、LocalStorage 与 SessionStorage 全面解析
  • 2
    前端工程化演进之路:从手工作坊到AI驱动的智能化开发
  • 3
    Vue 3 + TypeScript 现代前端开发最佳实践(2025版指南)
  • 4
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式