本章為大家帶來CSS中什麼是BEM 命名規範? ,有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
#1 #Bem 是區塊(block)、元素(element)、修飾符(modifier)的簡寫,由Yandex 團隊提出的一種前端CSS 命名方法論。
- 中劃線 :僅作為連字號使用,表示某個區塊或某個子元素的多重字之間的連接記號。
__ 雙底線:雙底線用來連接區塊和區塊的子元素
.block {} .block__element {} .block--modifier {}
.sub-block__element {} .sub-block--modifier {}
<div class="article"> <div class="body"> <button class="button-primary"></button> <button class="button-success"></button> </div> </div>
<div class="article"> <div class="article__body"> <div class="tag"></div> <button class="article__button--primary"></button> <button class="article__button--success"></button> </div> </div>
.hide { display: none !important;}
.article { max-width: 1200px; &__body { padding: 20px; } &__button { padding: 5px 8px; &--primary {background: blue;} &--success {background: green;} } }
//常规写法: .xxx{} .xxx__item{} .xxx__item_current{} // 嵌套写法 .xxx__item_current .mod-xxx__link{} 推荐: .xxx{} .xxx__item{} .xxx__item_hightlight{} .xxx__product-name{} .xxx__link{} .xxx__ming-zi-ke-yi-hen-chang{} // 嵌套写法 .xxx__item_current{ .xxx__link{} } //对应的HTML结构如下: <ul class="xxx"> <li class="xxx__item">第一项 <div class="xxx__product-name">我是名称</div> <span class="xxx__ming-zi-ke-yi-hen-chang">看类名</span> <a href="#" class="xxx__link">我是link</a> </li> <li class="xxx__item xxx__item_current">第二项 且 当前选择项 <div class="xxx__product-name">我是名称</div> <a href="#" class="xxx__item-link">我是link</a> </li> <li class="xxx__item xxx__item_hightlight">第三项 且 特殊高亮 <div class="xxx__product-name">我是名称</div> <a href="#" class="xxx__item-link">我是link</a> </li> </ul>
以上是CSS中什麼是BEM 命名規範?的詳細內容。更多資訊請關注PHP中文網其他相關文章!