2.前端开发命名规范

1 目录规范

  • 项目命名:projectname

    全部采用小写方式,以中划线分割。

    mall-managerment-system

  • 目录命名

    全部采用小写方式, 以中划线分隔,有复数结构时,要采用复数命名法, 缩写不用复数。

    vue的项目中的component是中的组件目录,使用kebab-case命名。

  • 样式文件夹:css

  • 脚本文件夹:js

  • 样式类图片文件夹:img

  • js、css、scss、html、png 文件命名

    全部采用小写方式,以中划线分隔

2 图片命名

1.命名顺序

图片命名建议以以下顺序命名:

图片业务(可选) +(mod-)图片功能类别(必选)+ 图片模块名称(可选) + 图片精度(可选)

  • 图片业务:

    • pp-:拍拍
    • wx-:微信
    • sq-:手Q
    • jd-:京东商城
  • 图片功能类别:

    • mod-:是否公共,可选
    • icon:模块类固化的图标
    • logo:LOGO类
    • spr:单页面各种元素合并集合
    • btn:按钮
    • bg:可平铺或者大背景
  • 图片模块名称:

    • goodslist:商品列表
    • goodsinfo:商品信息
    • userava tar:用户头像
  • 图片精度:

    • 普清:@1x
    • Retina:@2x | @3x

如下面例子:

公共模块:
wx-mod-btn-goodlist@2x.png
wx-mod-btn-goodlist.png
mod-btn-goodlist.png 

非公共模块:
wx-btn-goodlist@2x.png
wx-btn-goodlist.png
btn-goodlist.png

2.交叉就业务规范

业务交叉协作的时候,为了避免图片命名冲突,建议图片名加上业务和模块前辍,如拍拍侧和手Q侧的业务交叉合作时,侧栏导航icon雪碧图命名:

推荐:
pp-icon-mod-sidenav.png

不推荐:
icon-mod-sidenav.png

处理高清图片的时候,命名应该加上图片相应的精度说明

推荐:
jdc-logo@1x.png
jdc-logo@2x.png

不推荐:
jdc-logo.png
jdc-logo-retina.png

3 HTML/CSS文件命名

确保文件命名总是以字母开头而不是数字,且字母一律小写,以下划线连接且不带其他标点符号,如:

<!-- HTML -->
jdc.html
jdc-list.html
jdc-detail.html

<!-- SASS -->
jdc.scss
jdc-list.scss
jdc-detail.scss

4 ClassName命名

ClassName的命名应该尽量精短、明确,必须以字母开头命名,且全部字母为小写,单词之间统一使用下划线 “-” 连接

1.命名原则

基于姓氏命名法(继承 + 外来),如下图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zMnskHSA-1651275618552)(http://labs.qiang.it/ppguide/img/standard-jiapu.png)]

祖先模块不能出现下划线,除了是全站公用模块,如 mod- 系列的命名:

推荐:

<div class="modulename">
	<div class="modulename-info">
		<div class="modulename-son"></div>
		<div class="modulename-son"></div>
		...
	</div>
</div>
	
<!-- 这个是全站公用模块,祖先模块允许直接出现下划线 -->
<div class="mod-info">
	<div class="mod-info-son"></div>
	<div class="mod-info-son"></div>
	...		
</div>

不推荐:

<div class="modulename-info">
	<div class="modulename-info-son"></div>
	<div class="modulename-info-son"></div>
	...		
</div>

在子孙模块数量可预测的情况下,严格继承祖先模块的命名前缀

<div class="modulename">
	<div class="modulename-cover"></div>
	<div class="modulename-info"></div>
</div>

当子孙模块超过4级或以上的时候,可以考虑在祖先模块内具有识辨性的独立缩写作为新的子孙模块

推荐:

<div class="modulename">
	<div class="modulename-cover"></div>
	<div class="modulename-info">
    	<div class="modulename-info-user">
    		<div class="modulename-info-user-img">
    			<img src="" alt="">
    			<!-- 这个时候 miui 为 modulename-info-user-img 首字母缩写-->
    			<div class="miui-tit"></div>
    			<div class="miui-txt"></div>
    			...
    		</div>
    	</div>
    	<div class="modulename-info-list"></div>
	</div>
</div>

不推荐:

<div class="modulename">
	<div class="modulename-cover"></div>
	<div class="modulename-info">
    	<div class="modulename-info-user">
    		<div class="modulename-info-user-img">
    			<img src="" alt="">
    			<div class="modulename-info-user-img-tit"></div>
    			<div class="modulename-info-user-img-txt"></div>
    			...
    		</div>
    	</div>
    	<div class="modulename-info-list"></div>
	</div>
</div>

2.模块命名

全站公共模块:以 mod- 开头

<div class="mod-yours"></div>

业务公共模块:以 业务名-mod- 开头

<div class="paipai-mod-yours"></div>

3.常用命名推荐

注意:ad、banner、gg、guanggao 等有机会和广告挂勾的字眠不建议直接用来做ClassName,因为有些浏览器插件(Chrome的广告拦截插件等)会直接过滤这些类名,因此

<div class="ad"></div>

这种广告的英文或拼音类名不应该出现

另外,敏感不和谐字眼也不应该出现,如:

<div class="fuck"></div>
<div class="jer"></div>
<div class="sm"></div>
<div class="gcd"></div> 
<div class="ass"></div> 
<div class="KMT"></div> 
...
ClassName含义
about关于
account账户
arrow箭头图标
article文章
aside边栏
audio音频
avatar头像
bg,background背景
bar栏(工具类)
branding品牌化
crumb,breadcrumbs面包屑
btn,button按钮
caption标题,说明
category分类
chart图表
clearfix清除浮动
close关闭
col,column
comment评论
community社区
container容器
content内容
copyright版权
current当前态,选中态
default默认
description描述
details细节
disabled不可用
entry文章,博文
error错误
even偶数,常用于多行列表或表格中
fail失败(提示)
feature专题
fewer收起
field用于表单的输入区域
figure
filter筛选
first第一个,常用于列表中
footer页脚
forum论坛
gallery画廊
group模块,清除浮动
header页头
help帮助
hide隐藏
hightlight高亮
home主页
icon图标
info,information信息
last最后一个,常用于列表中
links链接
login登录
logout退出
logo标志
main主体
menu菜单
meta作者、更新时间等信息栏,一般位于标题之下
module模块
more更多(展开)
msg,message消息
nav,navigation导航
next下一页
nub小块
odd奇数,常用于多行列表或表格中
off鼠标离开
on鼠标移过
output输出
pagination分页
pop,popup弹窗
preview预览
previous上一页
primary主要
progress进度条
promotion促销
rcommd,recommendations推荐
reg,register注册
save保存
search搜索
secondary次要
section区块
selected已选
share分享
show显示
sidebar边栏,侧栏
slide幻灯片,图片切换
sort排序
sub次级的,子级的
submit提交
subscribe订阅
subtitle副标题
success成功(提示)
summary摘要
tab标签页
table表格
txt,text文本
thumbnail缩略图
time时间
tips提示
title标题
video视频
wrap容器,包,一般用于最外层
wrapper容器,包,一般用于最外层
  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

半夏_2021

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值