Хороший вопрос!
Какая организация для ваших файлов?
Раньше у нас был один файл на блок с BEM.Это важно по двум причинам:
- Когда вы видите класс, в котором вы уже знаете, в каком файле он находится
- Ясно, что неправильно использовать селектор с двумя разными блоками, потому что выне знаю, где его разместить
Какая организация для ваших селекторов?
Я советую вам перейти сверху (блок) к низу (элементы) и поставить альтернативные стили(модификаторы, медиа-запросы) непосредственно после каждого блока / элементов.Итак:
/* Footer.css */
/* Block */
.footer { }
/* Block modifiers */
.footer--dark { }
/* Block media-queries */
@media (max-width: 480px) {
.footer { }
.footer--dark { }
}
/* One element */
.footer__logo { }
/* One element modifiers */
.footer--dark .footer__logo { }
/* One element media-queries */
@media (max-width: 480px) {
.footer__logo { }
.footer--dark .footer__logo { }
}
/* another element */
/* ... */
Должен ли я использовать вложенность Sass?
Будьте осторожны с использованием Sass, один из ответов посоветует вам вложить ваш селектор так:
.footer {
&--dark { }
}
Это сложнее читать, искать, заменять и т. Д. Вы, вероятно, будете читать его чаще, чем пишете, так что это может быть хорошим выбором, чтобы избежать этого.
Вот полный плюс /Недостатки вложенности sass: http://bradfrost.com/blog/post/sass-selectors-to-nest-or-not-to-nest/
Какая организация для ваших скомпилированных файлов?
Обычно мы предоставляем только CSS-файл для каждого веб-сайта, это лучше использовать кеш браузера.Таким образом, вы можете сгруппировать все свои файлы при компиляции с Sass.