Information
- Rating
- Does not participate
- Location
- Симферополь, Республика Крым, Россия
- Works in
- Date of birth
- Registered
- Activity
Specialization
Frontend Developer
Lead
HTML
CSS
BEM
SCSS
Adaptive layout
TypeScript
JavaScript
Crossbrowser layout
Web development
React
ru.bem.info/methodology/naming-convention/#Стиль-no-namespace
Сделайте уровень переопределения (https://ru.bem.info/methodology/key-concepts/#Уровень-переопределения) «страница» и кладите туда блоки про эту страницу (about-title, about-layout, etc). Не нужно будет изобретать отдельные правила, как вы сделали в первом пункте манифеста.
Вот пример отдельных блоков для промо раздела сайта:
github.com/bem-site/bem.info/tree/master/blocks/promo
Они имеют отдельный префикс и не мешаются с остальными блоками сайта.
На конкретных страницах они доопределяются:
github.com/bem-site/bem.info/tree/master/blocks/methodology-index
Нет ничего плохого в том, что блок используется в одном месте сайта, блоки не обязательно должны повторно использоваться где-то ещё.
Спасибо!
Да, всё верно. Про процесс разработки с БЭМ я рассказывал тут:
https://events.yandex.ru/lib/talks/686/
Именование может быть любым, главное, чтобы можно было программно определить где блок, где элемент, а где их модификаторы/значения:
https://ru.bem.info/methodology/naming-convention/
Раскладывайте элементы по файловой структуре и всё будет удобно и однозначно:
https://ru.bem.info/methodology/filestructure/
А в это время в другой вселенной дизайнеры САМИ программируют дизайн систему:
http://whitepaper.tools
JFYI класс
article__heading_level_1_active
не по БЭМ.В
article-rewind__next-text
всё правильно написано. Это элементnext-text
блокаarticle-rewind
.Оно лежит в понятных местах на ФС и в полнотекстовом поиске по всему проекту нет необходимости.
Не обязательно, этот код может быть записан в файле блока.
Задачи относительно простые, но обучающие.