Я хочу знать о наилучшем подходе, когда нам нужно написать веб-компонент многократного использования (с учетом возможного переопределения пользователями), используя BEM и SASS:
Предположим, у нас есть главный элемент и дочерний элемент, поэтому, используя bem:
<div class="main">
<div class="main__child"></div>
</div>
Я хочу сосредоточиться на двух подходах в SASS:
Подход 1)
.main {
width: 200px;
height: 200px;
background-color: red;
.main__child {
width: 100px;
height: 100px;
background-color: orange;
}
}
это соответствует
.main {
width: 200px;
height: 200px;
background-color: red;
}
.main .main__child {
width: 100px;
height: 100px;
background-color: orange;
}
Подход 2)
.main{
width: 200px;
height: 200px;
background-color: red;
&__child {
width: 100px;
height: 100px;
background-color: orange;
}
}
это соответствует
.main {
width: 200px;
height: 200px;
background-color: red;
}
.main__child {
width: 100px;
height: 100px;
background-color: orange;
}
В первом подходе мы имеем более конкретную c Правило, чтобы мы могли выбирать только классы .main__child, которые являются потомками класса .main. (прочные отношения)
Во втором подходе два класса технически разделены в css. Из-за амперсанда (&).
Я запутался в этом. Читая в Интернете, кажется, что общий подход - второй подход. Можете ли вы дать мне больше объяснений? Даже учитывая переопределение класса?