美文网首页
HTML代码规范

HTML代码规范

作者: Mica_马超 | 来源:发表于2019-05-24 17:11 被阅读0次

HTML代码规范

文档

使用 HTML5 文档类型
<!DOCTYPE html>
<html lang="zh-CN">
  ...
</html>
HTML 文件使用无 BOM 的 UTF-8 编码。
启用 IE Edge 模式。
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
页面必须使用精简形式,明确指定字符编码。指定字符编码的 meta 必须是 head 的第一个直接子元素。
<html>
    <head>
        <meta charset="UTF-8">
        ......
    </head>
    <body>
        ......
    </body>
</html>

命名

大小写规范

除id、name为驼峰命名法外,标签名及属性名全部字母小写。属性值使用双引号包裹。
id、name属性为驼峰命名;class为短横分隔命名
id、name同一页面必须唯一

<div id="todayNews" class="container-fluid">
  <input name="username">
</div>
同一页面,不同元素,应避免使用相同的 name 与 id

IE 浏览器会混淆元素的 id 和 name 属性, document.getElementById 可能获得不期望的元素。所以在对不同元素的 id 与 name 属性的命名需要非常小心。

<input name="foo">
<div id="foo"></div>
<script>
// IE6 将显示 INPUT
alert(document.getElementById('foo').tagName);
</script>
代码缩进和换行

使用 2 个空格做为一个缩进层级,不允许使用 4 个空格 或 tab 字符。
建议每行不得超过 120 个字符。

禁止为了 hook 脚本,创建无样式信息的 class

不允许 class 只用于让 JavaScript 选择某些元素,class 应该具有明确的语义和样式。否则容易导致 css class 泛滥。

使用 id、属性选择作为 hook 是更好的方式。

标签

HTML 标签的使用应该遵循标签的语义

下面是常见标签语义

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

<!-- bad -->
<ul>
    <li>first
    <li>second
</ul>
标签使用必须符合标签嵌套规则。

块元素可以包含内联元素或某些块元素,但内联元素却不能包含块元素,它只能包含其它的内联元素
比如 div 不得置于 p 中,tbody 必须置于 table 中。

  1. 块级元素
    一般用来搭建网站架构、布局、承载内容……它包括以下这些标签:
    address、blockquote、center、dir、div、dl、dt、dd、fieldset、form、h1~h6、hr、isindex、menu、noframes、noscript、ol、p、pre、table、ul
  2. 内嵌元素
    一般用在网站内容之中的某些细节或部位,用以“强调、区分样式、上标、下标、锚点”等等,下面这些标签都属于内嵌元素:
    a、abbr、acronym、b、bdo、big、br、cite、code、dfn、em、font、i、img、input、kbd、label、q、s、samp、select、small、span、strike、strong、sub、sup、textarea、tt、u、var

有几个特殊的块级元素只能包含内嵌元素,不能再包含块级元素,这几个特殊的标签是:
h1、h2、h3、h4、h5、h6、p、dt

自定义属性建议以 xxx- 为前缀,推荐使用 data-
<div data-x-time="1000m">
布尔类型的属性,建议不添加属性值。
JavaScript 应当放在页面末尾

将 script 放在页面中间将阻断页面的渲染。

title 必须作为 head 的直接子元素,并紧随 charset 声明之后。

title 中如果包含 ascii 之外的字符,浏览器需要知道字符编码类型才能进行解码,否则可能导致乱码。

<head>
    <meta charset="UTF-8">
    <title>页面标题</title>
</head>

图片

禁止 img 的 src 取值为空。延迟加载的图片也要增加默认的 src。
为重要图片添加 alt 属性。
添加 width 和 height 属性,以避免页面抖动。

表单

有文本标题的控件必须使用 label 标签将其与其标题相关联。
<label for="username">用户名:</label> <input type="textbox" name="username" id="username">
使用 button 元素时必须指明 type 属性值。

button 元素的默认 type 为 submit,如果被置于 form 元素中,点击后将导致表单提交。为显示区分其作用方便理解,必须给出 type 属性。

当表单提交时,回车也可提交。
模板代码应以保证 HTML 单个标签语法的正确性为基本原则。
<!-- good -->
<li class="{if $item.type_id == $current_type}focus{/if}">{ $item.type_name }</li>

<!-- bad -->
<li {if $item.type_id == $current_type} class="focus"{/if}>{ $item.type_name }</li>

相关文章

  • HTML代码规范

    1. 代码规范 所有书写均在英文半角状态下的小写; 所有标签必须闭合; 统一用tab键缩进; 标签属性值必须带引号...

  • HTML代码规范

    HTML编码规范 1 代码风格 1.1 缩进与换行 [强制] 使用 4 个空格做为一个缩进层级,不允许使用 2 个...

  • HTML代码规范

    标签的语义化使用 1.标题 h1 页面标题,最大的标题,不可重复使用 h2 大模块标题,可重复使用 h3 中模块标...

  • HTML代码规范

    HTML代码规范 文档 使用 HTML5 文档类型 HTML 文件使用无 BOM 的 UTF-8 编码。 启用 I...

  • CSS综合

    HTML编码规范CSS编码规范 垂直居中代码

  • Bootstrap编码规范

    Bootstrap 编码规范:编写灵活、稳定、高质量的 HTML 和 CSS 代码的规范。 HTML 1、语法用两...

  • HTML(5) 代码规范

    HTML代码约定很多Web开发人员对HTML的代码规范知之甚少在2000年至2010年,许多Web开发人员从 HT...

  • HTML规范 - 代码格式

  • HTML CSS代码规范

    google html css编码规范 https://google.github.io/styleguide/h...

  • HTML规范-代码格式

    文案的注释方法 采用类似标签闭合的写法,与HTML统一格式;注释文案两头空格,与CSS注释统一格式。 开始注释:(...

网友评论

      本文标题:HTML代码规范

      本文链接:https://www.haomeiwen.com/subject/hadnzqtx.html