Skip to content

Latest commit

 

History

History
81 lines (73 loc) · 4.26 KB

html代码规范.md

File metadata and controls

81 lines (73 loc) · 4.26 KB

前言

前两篇书写了css和js的,html其实也有一些规范,我司给出了相应的规范,在规范中,我们和前面一样,将其分为建议和强制

建议

  • 每行不得超过 120 个字符。
  • class 必须代表相应模块或部件的内容或功能,不得以样式信息进行命名。
  • id 建议单词全字母小写,单词间以 - 分隔。class 建议单词全字母小写,单词间以 - 分隔,用于JavaScript选择的class则建议用J_class-name格式。
  • idclass 命名,在避免冲突并描述清楚的前提下尽可能短。
  • HTML 标签的使用应该遵循标签的语义。

解释:

  • 下面是常见标签语义:

    • p - 段落
    • h1,h2,h3,h4,h5,h6 - 层级标题
    • strong,em - 强调
    • ins - 插入
    • del - 删除
    • abbr - 缩写
    • code - 代码标识
    • cite - 引述来源作品的标题
    • q - 引用
    • blockquote - 一段或长篇引用
    • ul - 无序列表
    • ol - 有序列表
    • dl,dt,dd - 定义列表
  • CSS 可以实现相同需求的情况下不得使用表格进行布局。

  • 布尔类型的属性,建议不添加属性值。

  • 自定义属性建议以 xxx- 为前缀,推荐使用 data-

  • 启用 IE Edge 模式。

  • HTML 文件使用无 BOMUTF-8 编码。

  • 引入 CSS 时必须指明 rel="stylesheet"

  • 引入 CSSJavaScript 时无须指明 type 属性。

  • 展现定义放置于外部 CSS 中,行为定义放置于外部 JavaScript 中。

  • head 中引入页面需要的所有 CSS 资源。

  • JavaScript 应当放在页面末尾,或采用异步加载。

  • 移动环境或只针对现代浏览器设计的 Web 应用,如果引用外部资源的 URL 协议部分与页面相同,建议省略协议前缀。

  • 若页面欲对移动设备友好,需指定页面的

  • 避免为 img 添加不必要的 title 属性。

  • 为重要图片添加 alt 属性。

  • 有下载需求的图片采用 img 标签实现,无下载需求的图片采用 CSS 背景图实现。

  • 尽量不要使用按钮类元素的 name 属性。

  • 负责主要功能的按钮在 DOM 中的顺序应靠前。

  • 当使用 JavaScript 进行表单提交时,如果条件允许,应使原生提交功能正常工作。

  • 在针对移动设备开发的页面时,根据内容类型指定输入框的 type 属性。

  • 当在现代浏览器中使用 audio 以及 video 标签来播放音频、视频时,应当注意格式。

  • 在支持 HTML5 的浏览器中优先使用 audiovideo 标签来定义音视频元素。

  • 使用退化到插件的方式来对多浏览器进行支持。

  • 只在必要的时候开启音视频的自动播放。

  • object 标签内部提供指示浏览器不支持该标签的说明。

示例:

<object width="100" height="50" data="something.swf">DO NOT SUPPORT THIS TAG</object>
  • 模板代码的缩进优先保证 HTML 代码的缩进规则。
  • 模板代码应以保证 HTML 单个标签语法的正确性为基本原则。

强制

  • 使用 4 个空格做为一个缩进层级,不允许使用 2 个空格 或 tab 字符。
  • html 文件名必须单词全字母小写,单词间以 - 分隔。
  • class 必须单词全字母小写,单词间以 - 分隔。
  • 元素 id 必须保证页面唯一。
  • 禁止使用有样式的 class作为JavaScript选择器。
  • 同一页面,应避免使用相同的 nameid
  • 标签名必须使用小写字母。
  • HTML5 中规定允许省略的闭合标签,不允许省略闭合标签。
  • 标签使用必须符合标签嵌套规则。
  • 属性名必须使用小写字母。
  • 属性值必须用双引号包围。
  • 使用 HTML5doctype 来启用标准模式,建议使用大写的 DOCTYPE
  • 页面必须使用精简形式,明确指定字符编码。指定字符编码的 meta 必须是 head 的第一个直接子元素。
  • 页面必须包含 title 标签声明标题。
  • title 必须作为 head 的直接子元素,并在 charset 声明之后。
  • 保证 favicon 可访问。
  • 禁止 imgsrc 取值为空。延迟加载的图片也要增加默认的 src
  • 有文本标题的控件必须使用 label 标签将其与其标题相关联。
  • 使用 button 元素时必须指明 type 属性值。