开发过程中应该遵守哪些编码规范和class命名规范?

大家好,我是IT修真院深圳分院第4期学员梁耀,一枚正直纯洁善良的web程序员。

今天给大家分享:

【css-task12】开发过程中应该遵守哪些编码规范和class命名规范?

                                      Web小课堂【深圳第328期】

                                                                                          分享人:梁耀

1.背景介绍

      团队开发过程中,如果编码不规范,很容易造成出现bug之后难以维护等问题,所以一个具有普适性的编码规范具有很重要的意义.

     黄金原则:不管有多少人共同参与同一项目,一定要确保每一行代码都像是同一个人编写的。

2.知识剖析

HTML规范

一.DOCTYPE的声明

每个HTML开头使用!doctype来启用标准模式声明,在此建议使用HTML5的声明模式

二.字符集和编码字符

在每个页面的中设置字符集,一般都是使用"UTF-8"

三.语法

使用四个空格的缩进

在属性上使用双引号

不要忽略可选的关闭标签

四.引入css样式以及js脚本需要采用外链的形式引入css样式/js脚本,方便管理和修改。

五.正确的标签嵌套除了固定的嵌套规则(如ul包含li,ol包含li等),一般遵循以下规则:

1.块级元素与块级元素平级、内联元素与内联元素平级


(a是内联元素,h1是块级元素)

2.块级元素可以包含内联元素或某些块级元素,但内联元素不能包含块级元素

3.有几个特殊的块级元素只能包含内联元素,不能再包含块级元素h1~h6、p、dt

4.块级元素不能放在标签p里面5.li标签可以包含div标签,因为li和div标签都是装在内容的容器。

六.属性顺序HTML属性应该按照特定的顺序出现保证可读性

1.class

2.id、name

.3.data-*

4.src,for,tpye,href等

5.title,alt

6.role,aria-*

七.逻辑顺序

尽量让自己的网站按照先后的顺序

如先写页头——页体——页脚

css命名规范

一.声明顺序

1.positioning 定位(position/clear/float/)

因为可使一个元素脱离文档流,覆盖盒模型相关的样式

Box model盒模型(width/margin/padding)

Typographic 排版

Visual 外观(color/background)

2.媒体查询

尽量将媒体查询的位置靠近他们的相关的规则。不要把他们放在一个独立 文件当中,也不要写在最底下,以免容易忘记


开发过程中应该遵守哪些编码规范和class命名规范?_第1张图片

3.class的命名

不但要自己能看懂代码,也要别人能轻松读懂自己的代码

规则命名中,一律采用小写加中划线的方式,不允许使用大写字母或 _

命名避免使用中文拼音,应该采用更简明有语义的英文单词进行组合

 命名注意缩写,但是不能盲目缩写,具体请参见常用的CSS命名规则

 不允许通过1、2、3等序号进行命名

 避免class与id重名

 id用于标识模块或页面的某一个父容器区域,名称必须唯一,不要随意新建id

-class用于标识某一个类型的对象,命名必须言简意赅。

 尽可能提高代码模块的复用,样式尽量用组合的方式

4.属性简写

坚持限制属性取值简写的使用,过度使用属性简写往往会导致更混乱的代码。 常见的属性简写滥用包括:

padding,margin,font,background等

2.知识剖析

三.class的命名

不但要自己能看懂代码,也要别人能轻松读懂自己的代码。

规则命名中,一律采用小写加中划线的方式,不允许使用大写字母或_

命名避免使用中文拼音,应该采用更简明有语义的英文单词进行组合+

不允许通过1、2、3等序号进行命名;避免class与id重名

class用于标识某一个类型的对象,命名必须言简意赅

尽可能提高代码模块的复用,样式尽量用组合的方式

规则名称中不应该包含颜色(red/blue)、定位(left/right)等与具体显示效果相关的信息。 应该用意义命名,而不是样式显示结果命名

四.属性简写

坚持限制属性取值简写的使用,过度使用属性简写往往会导致更混乱的代码。 常见的属性简写滥用包括:

padding,margin,font,background等

3.常见问题:

class命名有什么常用的方式?

4.解决方案

1.原子类命名

这个关键在于拼凑组合.ft{folat:right;}

2.模块命名

按照职能划分命名规则

nav模块,可以命名为nav-tittle、nav-left

3.BEM命名

BEM的优点是独一无二 ,不用担心自己的样式被覆盖

缺点就是class名太长了,修改更新不方便

5.编码实战

6.扩展思考

在实际写代码的时候到底该如何选择命名方式?

可以记住常见的class关键词,在此基础上特殊化class

也可以参考github上的热门项目

7.参考文献

参考一:https://www.tuicool.com/articles/yqUjea

参考二:https://www.douban.com/note/499976405/?type=like

8.课后讨论

常用的class关键词有哪些?

开发过程中应该遵守哪些编码规范和class命名规范?

今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

------------------------------------------------------------------------------------------------------------------------

技能树.IT修真院

“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。

这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧 !

你可能感兴趣的:(开发过程中应该遵守哪些编码规范和class命名规范?)