BEM命名规范通过块、元素、修饰符结构提升代码可维护性,如.card__button--primary;SMACSS将样式分为基础、布局、模块等类,推荐l-、is-前缀;OOCSS倡导结构与皮肤分离,实现样式复用;推荐使用kebab-case命名,避免视觉描述,保持团队一致,BEM与kebab-case为最常用组合。

CSS中的命名规范主要是为了提升代码的可读性、可维护性和团队协作效率。虽然CSS本身不限制类名写法,但开发者在实践中总结出了一些主流命名规范,以下是几种常见的CSS命名方式。
BEM 是最流行的 CSS 命名方法之一,强调组件化结构,通过命名表达元素之间的关系。
命名格式:
header、menublock__element,如 menu__itemblock--modifier 或 block__element--modifier,如 menu--vertical、button__text--large例如:
立即学习“前端免费学习笔记(深入)”;
.card { }
.card__title { }
.card__button { }
.card__button--primary { }
.card--featured { }
SMACSS 提倡将样式分为五类,并建议使用语义化、层级清晰的命名方式。
分类包括:
body、h1header、sidebar,可加前缀 l- 或 layout-btn、carouselis- 前缀,如 is-active、is-hidden示例:
.l-container { }
.btn { }
.btn.is-active { }
.menu.is-open { }
面向对象的 CSS 强调“结构与皮肤分离”和“容器与内容分离”,鼓励重用样式对象。
命名更偏向功能性和可组合,比如:
.media { } /* 结构对象 */
.media__img { }
.media__body { }
<p>.btn { } /<em> 可复用按钮 </em>/
.btn-primary { } /<em> 皮肤样式 </em>/
.btn-large { } /<em> 大小样式 </em>/
通过组合多个类实现不同效果:<button class="btn btn-primary btn-large">
除了架构类规范,命名时也常遵循以下书写风格:
main-navigation、user-profile —— 最常见于 HTML/CSS 中,推荐使用userProfile —— 更多用于 JavaScript,CSS 中不推荐main_menu —— 较少用于 CSS,某些预处理器中可能出现UserCard —— 通常用于 React 组件类名,CSS 中少见red、left 等视觉描述,而用 error、sidebarjs- 用于 JavaScript 钩子(js-toggle-menu),防止样式与行为混淆基本上就这些。选择哪种规范取决于项目规模和团队习惯,BEM 和 kebab-case 是目前最广泛采用的组合。不复杂但容易忽略的是坚持执行。
以上就是css中有哪些命名规范的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号