关于bem写法问题

来源:3-8 LESS样式-footer底部模块样式

人生的起源

2019-09-28 17:49:00

    <!-- .nav>.-item|bem写出来的是 -->
    <div class="nav">
        <div class="nav__item"></div>
    </div>

    <!-- 如果我想写成下面的样子,bem该怎么写? -->
    <div class="nav">
        <div class="nav__item">
            <div class="nav__item__aaa"></div>
        </div>
    </div>
请查看注释中的提问,我试过了,如果写成.nav>.-item>.-aaa|bem,那最里面的div是nav__aaa,没办法变成nav__item__aaa,老师帮忙指导下
写回答

1回答

好帮手慕星星

2019-09-28

同学你好,

nav__item__aaa是不能这样定义的。

nav是一个模块,item是模块中的元素,元素的名字与模块的名字使用双下划线分隔(__),所以nav__item这样写是可以的。

而aaa是item中的内容,item是一个元素,不是一个模块,所以不能使用__。

有两种方式,第一种可以写成同学这样:

.nav>.-item>.-aaa|bem

第二种写为:

.nav>.-item>.-item-aaa|bem

效果:

http://img.mukewang.com/climg/5d8f333b096bf0b504730126.jpg

自己可以测试理解下,祝学习愉快!

0

0 学习 · 5012 问题

查看课程