前端代码规范
前端代码规范文档

前端代码规范文档前端代码规范文档一、命名规范1. HTML/CSS命名规范- 使用小写字母和连字符(-)作为单词分隔符;- 尽量避免使用缩写,除非是广泛接受的缩写;- 使用有意义的命名,不使用无意义的命名;- 使用统一的命名方式来表示特殊类型的元素(例如:头部、侧边栏等);2. JavaScript命名规范- 使用驼峰命名法(camelCase);- 使用有意义的命名来描述变量、函数或类的作用;- 避免使用单个字符的命名,除非是临时变量;- 使用全大写的命名方式来表示常量;二、缩进和空格规范1. 使用4个空格来进行缩进;2. 在括号前后留一个空格;3. 在运算符前后留一个空格;4. 在函数名和参数列表之间留一个空格;三、注释规范1. 使用注释来解释代码的功能和用途;2. 对于复杂的代码块或关键算法,应提供详细的注释;3. 注释应该是清晰明了的,避免使用不恰当的术语或缩写;4. 重要的注释可以使用大写字母或星号来标记;四、代码风格规范1. 使用一致的缩进和空格;2. 合理使用换行符,避免一行代码过长;3. 尽量避免使用行尾的空格或制表符;4. 使用一致的括号风格,例如在函数或语句块的开头和结尾都使用大括号;5. 使用分号来结束语句;6. 使用合理的命名方式来描述变量、函数和类的作用;7. 避免使用全局变量,使用局部变量或封装变量的方式来控制变量的作用范围;8. 避免使用多层嵌套的条件语句,可以使用条件判断的方法来简化代码;9. 使用恰当的函数和类来封装可重用的代码;五、代码结构规范1. 尽量避免大而复杂的函数,使用小而简单的函数来实现功能;2. 模块化代码,将相关联的函数和类放在同一个文件中;3. 合理使用空行来分隔不同的代码块;4. 将页面的结构和样式分离开来,使得HTML文件更加简洁和易于维护;5. 对于重要的功能块,使用代码块注释来标记开头和结尾;六、代码审查规范1. 对新提交的代码进行审查,确保其符合代码规范;2. 对代码中的错误和潜在问题进行识别和修复;3. 鼓励团队成员进行代码审查和互相学习,提高代码质量;4. 定期审核项目中的代码,找出不符合规范的代码并进行修正。
阿里前端开发规范

阿里前端开发规范阿里前端开发规范包括代码、命名、HTML、CSS、JavaScript、图片方面的规范。
1. 代码规范:- 使用四个空格缩进,不使用制表符。
- 代码行长度不超过80个字符。
- 使用驼峰命名法,变量和函数名用小写开头,构造函数用大写开头。
- 使用严格相等运算符(===和!==)替代宽松相等运算符(==和!=)。
- 在条件表达式中,使用括号来提高可读性。
- 避免在循环中使用等号赋值(例如,for (var i = 0; i < array.length; i++))。
- 避免使用eval()函数。
2. 命名规范:- 文件名应该全部小写,可以包含破折号(-)或下划线(_)。
- 文件夹名应该全部小写,可以包含破折号(-)或下划线(_)。
- CSS文件名应该以.css结尾。
- JavaScript文件名应该以.js结尾。
3. HTML规范:- 使用两个空格缩进,不使用制表符。
- 使用双引号而不是单引号作为属性值的引号。
- 在自定义属性中使用小写字母和破折号(-)。
- 为所有非自闭合标签使用闭合标签。
- 避免在HTML标签中使用行内样式。
4. CSS规范:- 使用两个空格缩进,不使用制表符。
- 使用小写字母和破折号(-)作为选择器和属性名的命名方式。
- 为每个选择器之间使用空行分隔。
- 使用简写属性来减少代码量。
- 使用预处理器(如Less或Sass)来编写CSS。
5. JavaScript规范:- 使用两个空格缩进,不使用制表符。
- 使用分号作为语句的结束符号。
- 避免使用全局变量。
- 避免使用with语句。
- 使用模块化的开发方式,避免全局作用域污染。
6. 图片规范:- 使用有意义的命名来描述图片内容。
- 使用适当的格式和压缩技术来减小图片文件大小。
- 将页面上的图片引用写成相对路径。
以上是阿里前端开发规范的一些主要内容。
在实际开发中,遵循这些规范可以提高代码的可读性和可维护性,使团队成员之间更容易协同工作。
WEB前端开发代码使用要求规范

WEB前端开发代码使用要求规范1.编码规范- 使用标准的HTML、CSS和JavaScript语法。
-使用缩进和空格来提高代码的可读性。
-使用注释来解释代码的目的和功能。
2.文件和目录结构规范-使用有意义的文件和目录命名,方便其他开发人员寻找代码。
-在项目中使用统一的目录结构,例如将HTML文件存放在一个文件夹中,将样式文件存放在另一个文件夹中,以此类推。
3.HTML规范- 避免在HTML中直接写入样式和脚本代码,应将样式和脚本代码分离到对应的CSS和JavaScript文件中。
4.CSS规范-使用适当的选择器,避免过多的嵌套。
-避免使用内联样式,应将样式写在CSS文件中,以提高可维护性。
- 使用合适的样式命名规则,例如使用BEM(Block-Element-Modifier)命名规则,或其他约定俗成的命名规则。
5. JavaScript规范-使用合适的变量和函数命名,提高代码的可读性。
-避免使用全局变量,应将变量和函数封装在模块中。
- 使用严格模式(`use strict`),避免不规范的语法和行为。
- 避免使用`eval`和`with`等不安全的代码。
-在循环中使用合适的终止条件,避免死循环。
6.代码结构规范-代码应具有良好的组织结构,例如使用模块化的方式来组织代码。
-尽量遵循单一职责原则,每个函数和类应该只负责一件事情。
-提取重复的代码块,封装成函数或类,以提高代码的复用性。
-不要写过长的函数或类,应该根据需要进行拆分和重构。
7.注释规范-使用注释来解释代码的目的和功能,特别是代码的复杂部分。
-注释应该清晰、简洁,方便其他开发人员理解代码。
-避免使用无用的注释,注释应该随着代码的变化而更新。
总之,遵守WEB前端开发代码使用要求规范能够提高代码的质量和开发效率,减少错误和维护成本。
同时,还能提高团队合作的效率,方便其他开发人员理解和修改代码。
因此,在进行WEB前端开发时应该积极遵守和推崇相关规范。
前端代码编写规范标准

前端代码编写规命名规则1.项目名称项目名称驼峰式命名。
例:myProject2.目录命名采用单数命名法。
例:css img font js3.JS文件命名字母全部小写,单词之间用“-”。
例:popup-window.js4.CSS文件命名字母全部小写,单词之间用“-”。
例:popup-window.css5.HTML文件命名文件名称驼峰式命名。
例:riverMonitor.htmlHTML1.语法缩进使用Tab(4个空格);解释:对于非HTML标签之间的缩进,比如script或style标签容缩进,与script或style标签的缩进同级。
<style>/* 样式容的第一级缩进与所属的 style 标签对齐 */ul {padding: 0;}</style><ul><li>first</li><li>second</li></ul><script>// 脚本代码的第一级缩进与所属的 script 标签对齐require(['app'], function (app) {app.init();});</script>嵌套的节点应该缩进;在属性上使用双引号(字符串拼接除外);属性名全小写,用“-”做分隔符;自动闭合标签处不能使用斜线。
<html><head><title>Page title</title></head><body><img src="images/company_logo.png"alt="Company"><h1class="hello-world">Hello, world!</h1></body></html>2.HTML5 doctype页面开头的doctype大写,html小写。
vue前端代码开发规范

vue前端代码开发规范开发⼯具使⽤1. 建议使⽤统⼀开发⼯具vscode2. vscode 使⽤插件建议Bracket Pair Colorizer => 彩虹括号,不同嵌套级别的括号不同的颜⾊GitLens => git⼯具Past and Indent => 粘帖代码正确缩进修正vetur => vue 插件3. 使⽤统⼀缩进,以tab缩进,⼀个tab⼤⼩为2个空格html代码编写规范1. 使⽤语义化标签如section footer header 进⾏布局页⾯结构2. 使⽤标准html5⽂档类型声明3. 使⽤utf-8 编码 <meta charset="utf-8">4. 尽量使⽤⽐较少的标签标签使⽤1. 使⽤尽量贴合语意,如,布局容器使⽤div,段落使⽤p。
数据列表使⽤ul/ol/dd等,关键字使⽤strong,标题使⽤h1~h6,图标使⽤ i;class命名规范1. 参与到ui交互的class使⽤前缀js-的命名规则,与定义样式的class区别开2. 参与布局的class使⽤前缀ly- (layout简称)3. 全局class使⽤前缀g-4. 对页⾯和组件统⼀命名,如页⾯需要添加class=”page-页⾯名” 组件添加class=”component-组件名”进⾏区分5. 取名尽量贴合语意(使⽤翻译软件翻译下)6. 页⾯须有⼀个私有的class选择器空间 scoped样式编写规范1. 布局以流式布局为主,禁⽌滥⽤绝对定位,只在有必要的时候才使⽤绝对定位2. 样式书写区分全局样式,布局样式,单元样式,页⾯私有样式,3. 页⾯私有样式应写在页⾯scoped 私有class下⾯4. 单元样式的选择器不许包含页⾯私有的class及布局class,以便于单元样式的复⽤5. 装饰性的背景图尽量写在样式⾥,源于风格样式和内容区分的思想6. 建议使⽤预处理样式 stylus 或scss,建⽴基础预定义样式⽂件:reset//样式重置variables//变量⽂件,包括如color,btn size,风格相关的颜⾊、尺⼨应定义在variables ⾥⾯,便于定义与切换风格mixins//混合样式定义index//全局样式定义公有样式⽂件 public.styl 依次引⽤ reset.styl variables.styl mixins.styl global.styl7. 统⼀定义字体⼤⼩如: medium normal large small mini 类,全局统⼀定义字体⼤⼩(⼤多数地⽅)8. 图标建议统⼀使⽤字体⽂件或者SVG⽂件9. 如⾮必要,不让选择器深度超过3层IE 兼容模式1. 优先使⽤最新版本的IE 和 Chrome 内核 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">移动端样式书写规范1. 尽可能使⽤以屏幕宽度为参照的等⽐例布局以js根据屏幕宽度动态计算根元素font-size 变换 rem 与 px 换算⽐例,做到等⽐缩放2. 定义 viewport 为移动端设备优化,设置可见区域的宽度和初始缩放⽐例,禁⽌⽤户⼿动缩放 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">js代码编写规范1. 函数/⽅法,要添加功能注释2. 函数/⽅法要保持功能单⼀,⼀个⽅法只做⼀件事情,复杂的功能要进⾏拆分3. 来⾃于接⼝返回的数据,和来⾃于本地存储的数据使⽤之前要做容错处理,保证程序健壮性4. 该⽤switch 的时候⽤switch,滥⽤if/else会使程序的可读性变差5. 在⼀票否决的情况下,可以采⽤写法如if(x)return 减少代码块嵌套深度vue项⽬规范1. 组件私有样式要添加scoped作⽤域属性,或⽤当前组件的唯⼀class 名包裹,公共样式应写在公共样式⽂件⾥⾯2. 布局应抽离到单独的布局⽂件中,做到页⾯内容和布局的代码分开到不同的⽂件⾥⾯3. ⼀个项⽬中 stylus less sass 只允许使⽤⼀种,建议使⽤stylusvue 项⽬⽬录结构规范src|—— api 接⼝定义⽬录(http.js定义axios封装和公共路径配置;api.js定义每个接⼝)|—— assets 静态⽂件⽬录|—— components 公共组件⽬录(可将查询,表格,分页或者布局类的组件封装为公共组件)|—— const 常量⽬录(filter.js过滤器、固定不经常改的常量制作)|—— pages/views 页⾯⽬录|—— plugins 第三⽅插件⽬录|—— router 路由定义⽬录|—— store vuex 状态管理定义⽬录|—— styles 样式⽬录 scss|sass|stylus 预处理⽅式 |——icons.scss 图标样式 |——index.scss ⼊⼝样式⽂件 |——reset.scss 重置所有标签 |——resetModel.scss 重置ele模态框 |——resetMessage.scss 重置ele消息框 |——resetTable.scss 重置ele表格 |——resetPagination.scss 重置ele分页 |——variable.scss 重置ele主题变量 |——mixins.scss 重置elemixins变量 等等,根据需求再添加新的|—— utils ⼯具库⽬录(时间⽇期处理⽅法datetime.js;以及其他的制作为⼀个⽂件)。
前端开发技术中的代码审查与代码规范指南

前端开发技术中的代码审查与代码规范指南代码审查是软件开发中非常重要的一环,尤其对于前端开发来说更是至关重要。
代码审查可以确保代码质量,提高软件的可维护性和可扩展性。
本文将探讨前端开发中的代码审查方法以及一些常见的代码规范指南。
一、代码审查的重要性代码审查是通过检查、评估和修复开发人员编写的代码来确保其质量的过程。
它有助于发现和解决代码中的错误、漏洞和不规范的实践。
代码审查的主要目标是确保代码的质量、一致性和可读性,并促进团队合作和知识共享。
代码审查的重要性在前端开发中更加突出,因为前端开发涉及到代码在不同浏览器和设备上的兼容性问题。
代码审查可以帮助发现潜在的浏览器兼容性问题,确保代码在不同环境下的稳定性和一致性。
二、代码审查的方法1. 静态代码分析工具静态代码分析工具可以扫描代码并自动检测潜在的问题,如潜在的错误、未使用的变量、代码重复等。
常见的静态代码分析工具包括ESLint、JSLint、JSHint等。
使用这些工具可以快速发现和修复代码中的问题,提高代码质量。
2. 代码审查工具代码审查工具可以帮助团队进行代码审查,确保代码符合团队制定的规范。
通过这些工具,团队成员可以对代码进行评论和讨论,以便快速解决问题。
常见的代码审查工具包括GitHub、Bitbucket等。
3. 人工审查除了工具的帮助外,人工审查仍然是代码审查中不可或缺的一部分。
人工审查可以帮助发现代码中的细微问题,例如命名不规范、不必要的注释等。
通过团队成员的眼睛,可以提高代码的质量和可读性。
三、代码规范指南代码规范是代码编写过程中需要遵循的一些规则和准则。
通过制定代码规范,可以确保整个团队的代码风格一致,提高代码的可读性和可维护性。
以下是几个常见的前端开发代码规范指南:1. 命名规范变量、函数、类和文件的命名应该具有描述性,易于理解和维护。
命名应该使用驼峰命名法或下划线命名法,并且要避免使用简单的缩写和数字作为命名。
2. 缩进和空格代码应该使用统一的缩进格式,例如两个或四个空格。
前端开发规范文档

前端开发规范文档一、概述。
本文档旨在规范前端开发工作,统一团队成员的开发风格,提高代码质量和可维护性。
在前端开发中,规范是非常重要的,它可以让团队成员之间的合作更加顺畅,代码更加易读易懂。
本规范文档将涵盖HTML、CSS、JavaScript等前端开发的相关规范,希望每位开发人员都能认真遵守。
二、HTML规范。
1. 文件命名规范。
文件名应使用小写字母,单词之间可以使用连字符“-”连接,例如,index.html、about-us.html。
文件名应简洁明了,不使用无意义的数字或字符。
2. 代码缩进规范。
使用两个空格进行代码缩进,不使用Tab键。
3. 标签规范。
标签名应使用小写字母。
标签属性值应使用双引号。
4. 注释规范。
在需要注释的地方使用<!--->进行注释。
5. 其他规范。
应尽量避免使用行内样式和行内脚本。
尽量减少标签的嵌套层级,保持HTML结构的简洁性。
三、CSS规范。
1. 文件组织规范。
将CSS文件统一放置在一个文件夹中,不要将CSS文件散落在各个目录中。
可以根据模块或页面的不同,将CSS文件拆分为多个文件,使用@import进行引入。
2. 类名规范。
类名应使用小写字母,单词之间可以使用连字符“-”连接,例如,header-nav、footer-content。
类名应简洁明了,不使用无意义的数字或字符。
3. 属性顺序规范。
CSS属性应按照一定的顺序书写,例如,布局定位属性、盒模型属性、文字排版属性、视觉效果属性等。
4. 其他规范。
尽量避免使用!important,除非必要情况下。
尽量使用缩写属性,减少代码量。
四、JavaScript规范。
1. 变量命名规范。
变量名应使用驼峰命名法,例如,myName、isShow。
变量名应简洁明了,不使用无意义的单个字母。
2. 代码缩进规范。
使用两个空格进行代码缩进,不使用Tab键。
3. 注释规范。
在需要注释的地方使用//进行单行注释,使用/ /进行多行注释。
前端开发设计规范文档

前端开发设计规范文档一、引言二、代码编写规范1.缩进和空格-使用2个空格作为一个缩进层级。
- 在每个关键词或运算符后添加一个空格,如if (condition) {}。
-每行代码的末尾都应该去掉多余的空格。
2.行长限制每行代码应控制在80个字符以内,避免过长的代码行导致代码难以阅读和理解。
3.注释-使用注释来解释代码的意图和逻辑。
-使用单行注释(//)来注释一行代码,使用多行注释(/*...*/)来注释一段代码。
-注释要保持与代码同步,当代码发生修改时,注释也应随之更新。
4.变量和函数命名- 使用驼峰命名法(camelCase)命名变量和函数。
变量和函数名应该清晰明确,能够准确表达其含义。
-避免使用缩写和简写,除非是常见的缩写或简写形式。
5.常量命名-使用全大写字母和下划线的命名方式命名常量。
-常量名要具有描述性,能够清晰表达其含义。
6.字符串引号-使用双引号("")包裹字符串,避免使用单引号('')。
7.条件判断和循环语句-在条件判断和循环语句中使用花括号({})包裹代码块,即使只有一行代码。
8.数据类型转换-使用严格相等运算符(===)进行数据类型和值的比较,避免使用弱相等运算符(==)。
三、组织结构规范1.文件和文件夹命名-文件和文件夹命名应该清晰明确,能够准确表达其内容。
-文件和文件夹的命名应使用小写字母、短划线和数字的组合,避免使用空格和特殊字符。
2.目录结构前端项目应该按照一定的目录结构进行组织,常见的目录结构如下:- src:项目源代码目录。
- assets:用于存放静态资源文件,如图片、字体等。
- styles:存放样式文件。
- scripts:存放脚本文件。
- pages:存放页面组件。
四、性能优化规范1.文件合并和压缩-将多个CSS和JS文件合并为一个文件,并进行压缩。
-使用工具和插件进行自动化合并和压缩操作。
2.图片优化- 使用适当的图像格式,如JPEG、PNG、WebP等,以提高图像加载速度。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
福宝童趣61区项目前端代码规范代码规范六一区项目前端组2016文档控制更改记录审阅分发目录代码规范前端编码规范(1)——一般规范这是一份旨在增强团队的开发协作,提高代码质量和打造开发基石的编码风格规范,其中包含了HTML, JavaScript 和CSS/SCSS 这几个部分。
我们知道,当一个团队开始指定并实行编码规范的话,错误就会变得更加显而易见。
如果一段特定的代码不符合规范的话,它有可能只是代码风格错误,而也有可能会是bug。
早期指定规范就使得代码审核得以更好的开展,并且可以更精确的地定位到错误。
只要开发者们能够保证源代码源文件都严格遵循规范,那接下去所使用的混淆、压缩和编译工具则可投其所好不尽相同。
文件命名规范在web 项目中,所有的文件名应该都遵循同一命名约定。
以可读性而言,减号(-)是用来分隔文件名的不二之选。
同时它也是常见的URL 分隔符(i.e. ///blog/my-blog-entry or ///images/big-black-background.jpg),所以理所当然的,减号应该也是用来分隔资源名称的好选择。
请确保文件命名总是以字母开头而不是数字。
而以特殊字符开头命名的文件,一般都有特殊的含义与用处(比如compass[1] 中的下划线就是用来标记跳过直接编译的文件用的)。
资源的字母名称必须全为小写,这是因为在某些对大小写字母敏感的操作系统中,当文件通过工具压缩混淆后,或者人为修改过后,大小写不同而导致引用文件不同的错误,很难被发现。
还有一些情况下,需要对文件增加前后缀或特定的扩展名(比如.min.js, .min.css),抑或一串前缀(比如3fa89b.main.min.css)。
这种情况下,建议使用点分隔符来区分这些在文件名中带有清晰意义的元数据。
不推荐推荐推荐协议规范不要指定引入资源所带的具体协议。
当引入图片或其他媒体文件,还有样式和脚本时,URLs 所指向的具体路径,不要指定协议部分(http:, https:),除非这两者协议都不可用。
不指定协议使得URL 从绝对的获取路径转变为相对的,在请求资源协议无法确定时非常好用,而且还能为文件大小节省几个字节。
不推荐推荐不推荐推荐书写规范文本缩进一次缩进两个空格。
注释注释是你自己与你的小伙伴们了解代码写法和目的的唯一途径。
特别是在写一些看似琐碎的无关紧要的代码时,由于记忆点不深刻,注释就变得尤为重要了。
编写自解释代码只是一个传说,没有任何代码是可以完全自解释的。
而代码注释,则是永远也不嫌多。
当你写注释时一定要注意:不要写你的代码都干了些什么,而要写你的代码为什么要这么写,背后的考量是什么。
当然也可以加入所思考问题或是解决方案的链接地址。
不推荐推荐一些注释工具可以帮助你写出更好的注释。
JSDoc 或YUIDoc 就是用来写JavaScript 注释用的。
你甚至可以使用工具来为这些注释生成文档,这也是激励开发者们写注释的一个好方法,因为一旦有了这样方便的生成文档的工具,他们通常会开始花更多时间在注释细节上。
代码走查对于比较宽松自由的编程语言来说,严格遵循编码规范和格式化风格指南就显得极为重要。
遵循规范固然很好,但是有自动化流程来确保其执行情况,岂不更佳。
Trust is good, control is better.对于JavaScript,建议使用JSLint 或JSHint。
前端编码规范(2)——HTML 规范文档类型推荐使用HTML5 的文档类型申明:<!DOCTYPE html>.(建议使用text/html 格式的HTML。
避免使用XHTML。
XHTML 以及它的属性,比如application/xhtml+xml 在浏览器中的应用支持与优化空间都十分有限)。
HTML 中最好不要将无内容元素[1] 的标签闭合,例如:使用<br> 而非<br /> HTML 验证一般情况下,建议使用能通过标准规范验证的HTML 代码,除非在性能优化和控制文件大小上不得不做出让步。
使用诸如W3C HTML validator 这样的工具来进行检测。
规范化的HTML 是显现技术要求与局限的显著质量基线,它促进了HTML 被更好地运用。
不推荐推荐省略可选标签HTML5 规范中规定了HTML 标签是可以省略的。
但从可读性来说,在开发的源文件中最好不要这样做,因为省略标签可能会导致一些问题。
省略一些可选的标签确实使得页面大小减少,这很有用,尤其是对于一些大型网站来说。
为了达到这一目的,我们可以在开发后期对页面进行压缩处理,在这个环节中这些可选的标签完全就可以省略掉了。
脚本加载出于性能考虑,脚本异步加载很关键。
一段脚本放置在<head> 内,比如<script src="main.js"></script>,其加载会一直阻塞DOM 解析,直至它完全地加载和执行完毕。
这会造成页面显示的延迟。
特别是一些重量级的脚本,对用户体验来说那真是一个巨大的影响。
异步加载脚本可缓解这种性能影响。
如果只需兼容IE10+,可将HTML5 的async 属性加至脚本中,它可防止阻塞DOM 的解析,甚至你可以将脚本引用写在<head> 里也没有影响。
如需兼容老旧的浏览器,实践表明可使用用来动态注入脚本的脚本加载器。
你可以考虑yepnope 或labjs。
注入脚本的一个问题是:一直要等到CSS 对象文档已就绪,它们才开始加载(短暂地在CSS 加载完毕之后),这就对需要及时触发的JS 造成了一定的延迟,这多多少少也影响了用户体验吧。
终上所述,兼容老旧浏览器(IE9-)时,应该遵循以下最佳实践。
脚本引用写在body 结束标签之前,并带上async 属性。
这虽然在老旧浏览器中不会异步加载脚本,但它只阻塞了body 结束标签之前的DOM 解析,这就大大降低了其阻塞影响。
而在现代浏览器中,脚本将在DOM 解析器发现body 尾部的script 标签才进行加载,此时加载属于异步加载,不会阻塞CSSOM(但其执行仍发生在CSSOM 之后)。
所有浏览器中,推荐只在现代浏览器中,推荐语义化根据元素(有时被错误地称作“标签”)其被创造出来时的初始意义来使用它。
打个比方,用heading 元素来定义头部标题,p 元素来定义文字段落,用a 元素来定义链接锚点,等等。
有根据有目的地使用HTML 元素,对于可访问性、代码重用、代码效率来说意义重大。
以下示例列出了一些的语义化HTML 主要情况:不推荐推荐不推荐推荐尽量用 alt 标签去描述图片,设想你需要对于那些只能通过语音或者看不见图片的用户表达图片到底是什么。
不推荐推荐关注点分离理解web 中如何和为何区分不同的关注点,这很重要。
这里的关注点主要指的是:信息(HTML 结构)、外观(CSS)和行为(JavaScript)。
为了使它们成为可维护的干净整洁的代码,我们要尽可能的将它们分离开来。
严格地保证结构、表现、行为三者分离,并尽量使三者之间没有太多的交互和联系。
就是说,尽量在文档和模板中只包含结构性的HTML;而将所有表现代码,移入样式表中;将所有动作行为,移入脚本之中。
在此之外,为使得它们之间的联系尽可能的小,在文档和模板中也尽量少地引入样式和脚本文件。
清晰的分层意味着:●不使用超过一到两张样式表(i.e. main.css, vendor.css)●不使用超过一到两个脚本(学会用合并脚本)●不使用行内样式(<style>.no-good {}</style>)●不在元素上使用style 属性(<hr style="border-top: 5px solid black">)●不使用行内脚本(<script>alert('no good')</script>)●不使用表象元素(i.e. <b>, <u>, <center>, <font>, <b>)●不使用表象class 名(i.e. red, left, center)不推荐推荐HTML内容至上不要让非内容信息污染了你的HTML。
现在貌似有一种倾向:通过HTML 来解决设计问题,这是显然是不对的。
HTML 就应该只关注内容。
HTML 标签的目的,就是为了不断地展示内容信息。
●不要引入一些特定的HTML 结构来解决一些视觉设计问题●不要将img 元素当做专门用来做视觉设计的元素以下例子展示了误将HTML 用来解决设计问题的这两种情况:不推荐推荐图片和SVG 图形能被引入到HTML 中的唯一理由是它们呈现出了与内容相关的一些信息。
不推荐推荐Type属性省略样式表与脚本上的type 属性。
鉴于HTML5 中以上两者默认的type 值就是text/css 和text/javascript,所以type 属性一般是可以忽略掉的。
甚至在老旧版本的浏览器中这么做也是安全可靠的。
不推荐推荐可用性如果HTML5 语义化标签使用得当,许多可用性问题已经引刃而解。
ARIA 规则在一些语义化的元素上可为其添上默认的可用性角色属性,使用得当的话已使网站的可用性大部分成立。
假如你使用nav, aside, main, footer 等元素,ARIA 规则会在其上应用一些关联的默认值。
更多细节可参考ARIA specification另外一些角色属性则能够用来呈现更多可用性情景(i.e. role="tab")。
Tab Index 在可用性上的运用检查文档中的tab 切换顺序并传值给元素上的tabindex,这可以依据元素的重要性来重新排列其tab 切换顺序。
你可以设置tabindex="-1" 在任何元素上来禁用其tab 切换。
当你在一个默认不可聚焦的元素上增加了功能,你应该总是为其加上tabindex 属性使其变为可聚焦状态,而且这也会激活其CSS 的伪类:focus。
选择合适的tabindex 值,或是直接使用tabindex="0" 将元素们组织成同一tab 顺序水平,并强制干预其自然阅读顺序。
微格式在SEO 和可用性上的运用如果SEO 和可用性环境条件允许的话,建议考虑采用微格式。
微格式是通过在元素标签上申明一系列特定数据来达成特定语义的方法。
谷歌、微软和雅虎对如何使用这些额外的数据一定程度上的达成一致,如果正确的使用,这将给搜索引擎优化带来巨大的好处。
你可以访问 获得更多内容细节。
看一个电影网站的简单例子:不带微格式带有微格式ID 和锚点通常一个比较好的做法是将页面内所有的头部标题元素都加上ID. 这样做,页面URL 的hash 中带上对应的ID 名称,即形成描点,方便跳转至对应元素所处位置。