HTML编码规范

本篇文章是基于王叨叨大佬师父维护的文档梳理的,有兴趣可以去看一下原文HTML编码规范

1. 缩进与换行

【建议】 使用 2 个空格作为一个缩进层级,不允许使用tab字符

解释:

​ 具体项目,可以使用2个空格,也可以使用4个空格,依据组内的规范定,但项目内部要统一。

​ 为啥可以用4个空格而不能用tab字符呢?因为虽然tab字符和4个空格表面上看起来实现的效果是一样的。但是在不同的编辑器里tab的长度可能不一样。这会导致有tab字符的代码,用不同的编辑器打开时,格式可能会乱。但是,敲一下tab肯定比敲四下空格的效率要高。目前,很多编辑器都能够将tab字符设置成4个空格(敲一下tab相当于敲了4个空格)。

【强制】 对于style和script中的代码,一级缩进要与style和script标签缩进同级

<!--  样式内容的一级缩进与所属的 style 标签对齐  -->
<style>
.main {
    color: red;
}
</style>

<!-- 脚本代码的一级缩进与所属的 script 标签对齐 -->
<script>
document.write("Hello World!");
</script>

【建议】 每行不得超过 120 个字符。

解释:

​ 过长的代码不容易阅读与维护。

2. 命名

【强制】 id、class 必须全字母单词小写,单词间以 - 分隔。

【强制】 class 必须代表相应模块或部件的内容及功能,不得以样式信息进行命名。

示例:

<!-- good -->
<div class="sidebar"></div>

<!-- bad -->
<div class="left"></div>

【强制】 id必须保证页面的唯一。

【强制】 同一页面,应避免使用相同的name和id。

解释:

​ IE浏览器比较低的版本会混淆元素的 id 和name属性。如此document.getElementById 获取的就不是期望中的结果。

示例:

<input name="foo">
<div id="foo"></div>
<script>
alert(document.getElementById('foo').tagName);
</script>

 ​ 正常应该显示DIV,但在IE7浏览器下显示的却是INPUT。

【建议】 id、class命名,在避免冲突并描述清楚的前提下尽可能短。

【强制】 禁止为了hook脚本,创建无样式信息的class。

解释:

​ hook机制:简单来说就是提前列出所有可能的情况,减少if-else的使用。

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

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

3. 标签

【强制】 标签名必须使用小写字母

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值