2014-12-07 88 views
2

我有一個客戶端實體。有兩種類型的客戶:醫生和藥房。兩者都有「姓名」,「地址」,「電話」,「電子郵件」字段。但醫生還有「醫學專業」和「醫院」領域。 醫生和藥房在風格上幾乎相同(醫生的身高和專業除外)。BEM。塊修飾符元素命名

我有「客戶端」塊(使用原始的BEM表示法)。

.client { 
    &_type_doctor { 
     height: 280px; 
    } 
    &_type_pharmacy { 
     height: 210px; 
    } 
    &__name { 
     ... 
    } 
    &__address { 
     ... 
    } 
    ... 
} 

而我的問題是我該如何命名特殊的醫生領域?

.client__medical-specialty {...} 
.client__hospital {...} 

或者

.client_type_doctor__medical-specialty {...} 
.client_type_doctor__hospital {...} 

還是應該有另外的「醫生」塊,當客戶端是醫生,我應該與醫生混合客戶端?

.client { 
    &__name {...} 
    &__address {...} 
    ... 
} 

.doctor { 
    height: 280px; 

    &__medical-specialty {...} 
    &__hospital {...} 
} 

回答

1

元素始終有一個塊名稱本身的前綴(不包含帶修飾符的塊)。所以

.client__medical-specialty {...} 
.client__hospital {...} 

是最好的方式去。

+0

謝謝!我這麼認爲,但想確定。 – 2014-12-07 17:13:26