CSS命名规范化

CSS命名规范化,有利于代码阅读和维护,在大型项目及团队协作开发中有着重要的意义。这里我推荐采用BEM命名规范+适当的语义理解简写。因为BEM命名常常会因为太长而被人诟病,所以适当加上一些简写,既可保证良好的阅读性同时保证良好的书写性。

BEM命名规范

  • block:模块,名字单词间用 - 连接
  • element:元素,表示模块的子元素,以 __ 与block连接
  • modifier:修饰,表示模块的变体,定义特殊模块,以 -- 与block连接

语义理解简写

这里我借鉴的是网易CSS框架NEC的简写规范 nec.netease.com/standard/cs…

但是没必要刻板的照抄,吸取自己团队能理解接受的简写即可。

Tips

  • 当遇上block后面可能既要接element和modifier的情况时,可以考虑两种思路:

    第一种思路:按照block__element--modifier的顺序进行命名

    第二种思路:此时可以考虑将element看成block来进行命名,即写成block-element--modifier

  • element后面还是可以继续接block的

    例如 .van-button__loading-text 类似的命名方式

实践举例

.van-button{&--loading,&--disabled {}&__loading-text {}
}.hd{&__text {}&__icon {}&__text--primary {}&__text--warning {}
}.list{&-item {}&-item__text {}&-item__value {}
}
复制代码

结语

最后,文无第一,规范化的东西并没有一个得到大家认可的最优解,欢迎大家讨论自己的想法,共同努力去优化开发规范。

转载于:https://juejin.im/post/5c95c5f4f265da612e6d63ee

『前端规范化』CSS命名规范化相关推荐

  1. 『前端风云』Vite Webpack 恩怨史

    Vite Webpack 恩怨史 这篇文章总结自掘金社区的一篇优质科普文章,参考链接附于文章尾部. 本文按照如下顺序阐述了Vite Webpack等前端构建工具的发展. Created with Ra ...

  2. 『前端大事记』之「几件大事」

    [回复"1024",送你一个特别推送] 不知道大家都听没听说过这句哈:前端的江湖总是不缺话题,且从没有消停过!!! 你要说没听说过,那就对了,这句话是我刚刚说的.但是这句话想必大家 ...

  3. 『前端技术』相比后端是否只能打辅助?

    问题来源于知乎提问,截图如下: 前后端如何定义 前端生存现状 前端的下半场 前端的机遇 1. 前后端如何定义? 论坛上人们经常会为前后端的问题展开撕 x 大战,很多时候问题的根源是没有定义好前后端的概 ...

  4. css宋体代码_前端开发必备的CSS命名规范与常用CSS代码集合

    编辑 | web前端开发 来源 | web前端开发 我们在用html+css进行网页的排版布局时,经常会遇到CSS命名,如果是在团队多人协作开发时,团队里都会有自己的命名规范与要求. 但如果是自己在个 ...

  5. 2021前端最新DIV+CSS规范命名大全集合

    我们开发CSS+DIV网页(Xhtml)时候,比较困惑和纠结的事就是CSS命名,特别是新手不知道什么地方该如何命名,怎样命名才是好的方法. 一.命名规则说明: - TOP 所有的命名最好都小写 属性的 ...

  6. 戏说前端 JavaScript 之『防抖节流』基础知识

    往事不堪回首 犹记在很久之前的某次面试中,和那技术大哥谈的正欢呢,冷不防他来了句:谈一谈防抖和节流吧. 抹了把凉汗,我用颤抖的.不自信的语气回答道:呃,防抖就是应该是防止抖动的意思,节流大概是节省流量 ...

  7. 关于前端的CSS命名

    css命名 (1)页面结构 容器: container 页头:header 内容:content/container 页面主体:main 页尾:footer 导航:nav 侧栏:sidebar 栏目: ...

  8. 前端之DIV+CSS布局

    刚开始学习javaweb,首先定位学习后端,可是随着学习的深入和项目的进行,越来越发现前端知识的欠缺,之前也随着视频看过,随着时间的流逝,具体的应用也随之忘记了. 而现在开始自己练习项目,发现前端知识 ...

  9. 成都链安重磅出品 | 基于VS Code插件的智能合约自动形式化验证工具Beosin—VaaS『离线免费版』...

    11月4日,成都链安重磅推出『离线免费版』智能合约自动形式化验证工具Beosin-VaaS,该版本基于流行的开发工具VS Code插件,供广大开发者免费使用.获得方式如下,欢迎体验使用: https: ...

最新文章

  1. python大数据免费_安利大家一个Python大数据分析神器
  2. 搭建LAMP下的ucenter家园博客
  3. 如何正确克隆JavaScript对象?
  4. android onitemclicklistener 参数,android – 对listview中的项使用setOnItemClickListener
  5. linux-文件类型-七种
  6. matlab 指定区域随机游走_了解随机游走模型和移动平均过程(Python)
  7. webview session不失效_不懂HttpSession对象看这里--乐字节
  8. ST电机库 MCSDK-FUL_5.4.4 下载
  9. c语言编译器 代码优化,C语言 之编译器优化
  10. sap linux 安装教程,Ubuntu Linux 下安装Sapgui740
  11. c语言装b程序,C语言打造表白和装逼利器:亲爱的让我们相爱在一起,酷炫的梦幻...
  12. 最新QQ强制搜索Api接口
  13. 动态二维码刷卡触摸按键门禁一体机性能与选型攻略
  14. 安卓开机画面_为了安卓系统,入手文石BOOX Poke Pro电子书阅读器
  15. k8s-imagePullPolicy拉取策略
  16. 解决Mac book pro (M1芯片)电脑打开idea卡顿,cpu飙升的问题。
  17. deeplearning.38序列模型(搭建RNN与LSTM应用实践)
  18. 推荐系统之社会化推荐经典论文总结
  19. mysql出现LF怎么办,MySQL的LF_HASH
  20. 视频文件太大?使用FFmpeg来无损压缩它

热门文章

  1. API接口通讯参数规范
  2. linux 安装tar 命令
  3. Nas服务器使用xampp修改端口号
  4. 一张图系列——为什么在DllMain里面创建了线程并Wait会卡死
  5. Android点击事件(click button)的四种写法
  6. C# webbrowser控件点击页面按钮
  7. VS 2008 .NET Framework 3.5 Training Kit
  8. Node-RESTful
  9. Windows PE 第十二章 PE变形技术
  10. hdu5246超级赛亚ACMer