用了elementUI后,发现css类名中“--”和“__”,不知道是什么意思?于是上网查了一下,它们的出现是源于BEM和Nicolas Gallagher...
BEM的意思就是块(block)、元素(element)、修饰符(modifier),是由Yandex团队提出的一种前端命名方法论。这种巧妙的命名方法让你的CSS类对其他开发者来说更加透明而且更有意义。BEM命名约定更加严格,而且包含更多的信息,它们用于一个团队开发一个耗时的大项目。
.block 代表了更高级别的抽象或组件。
.block__element 代表.block的后代,用于形成一个完整的.block的整体。
.block--modifier代表.block的不同状态或不同版本。
.site-search{} /* 块 */
.site-search__field{}/* 元素 */
.site-search--full{}/* 修饰符 */
我的vue项目中使用sass预处理css,sass有嵌套,所以我在每个组件用一个容器,起名为:组件名-wrapper,组件名是唯一的,然后把这个组件的css都写在.组件名-wrapper里,在加个scoped,以免冲突。。。
上代码:
由于笔记本没装sass,所以报错,大家就将就看下吧!第一次写简书,下次好好弄!