ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
BEM的意思就是块(block)、元素(element)、修饰符(modifier),是由Yandex团队提出的一种前端命名方法论。这种巧妙的命名方法让你的CSS类对其他开发者来说更加透明而且更有意义。BEM命名约定更加严格,而且包含更多的信息,它们用于一个团队开发一个耗时的大项目。 命名约定的模式如下: ```css .block{} .block__element{} .block--modifier{} ``` .block 代表了更高级别的抽象或组件。 .block__element 代表.block的后代,用于形成一个完整的.block的整体。 .block--modifier代表.block的不同状态或不同版本。 在项目中,我们使用smacss配合bem完成css的规划组合 命名规则如下 1. smacss规定五中类型,其中皮肤类和初始化类独立处理,另外三类规定命名前缀 2. 布局类 以.l开头中划线链接具体布局名 3. 模块类 以.m开头中划线链接具体模块名 4. 状态类 以--后链接具体状态名字 实例如下 ```html <header class="l-header"> <nav class="m-nav"> <ul class="m-nav_compent"> <li class="m-nav_children"> <span class="m-nav_list--red"> </span> </li> </ul> </nav> </header> ```