Size: a a a

2020 May 09

Р

Роман in БЭМ
Elect Freak
разрешает ли бэм использовать вложенные селекторы для элементов? то есть .someblock__elem .block__elem? если someblock__elem примиксован к .block на одном узле
Не запрещает явно, но кажется, что продолжая использовать БЭМ-мышление можно «улучшить» этот кусок, избавившись от увеличение специфичности (переопределение стилей элемента через микс на блоке). Как выглядит этот фрагмент в дизайне? Давайте попробуем разобраться.
источник

EF

Elect Freak in БЭМ
Роман
Не запрещает явно, но кажется, что продолжая использовать БЭМ-мышление можно «улучшить» этот кусок, избавившись от увеличение специфичности (переопределение стилей элемента через микс на блоке). Как выглядит этот фрагмент в дизайне? Давайте попробуем разобраться.
Спасибо за ответ, я сейчас не в городе нахожусь, интернет слабый, еле отправил то, что отправил. Позже как смогу покажу. Но если кратко — это ul с li внутри. На разных страницах такой список идет, а размеры шрифта разные. Вот и не знаю, как сделать.
источник

Р

Роман in БЭМ
Раз меняется что-то закономерно, то это скорее всего модификатор:
источник

Р

Роман in БЭМ
.list__item {
 font-size: inherit;
}

.list_size_s {
 font-size: .8em;
}

.list_size_l {
 font-size: 1.2em;
}
источник
2020 May 10

SB

Sergey Berezhnoy in БЭМ
Elect Freak
Причин, почему это нельзя было бы сделать, не вижу, однако смущает, что в документации написано, что бэм не запрещает использовать такие селекторы для изменения стилей элементов в зависимости от модификаторов блока, а про остальные случаи ни слова:
элементы внутри своего блока модифицировать можно, это внутреннее устройство блока

а вот модификация блока внутри другого блока или элемента другого блока внутри элемента — это уже нарушение инкапсуляции и создание контекстной зависимости, лучше делать примерно как @Realetive написал
источник

EF

Elect Freak in БЭМ
Роман
Раз меняется что-то закономерно, то это скорее всего модификатор:
спасибо, просто что если, скажем, разных размеров 500, ну в теории? хотелось бы тогда привязывать размер к странице, а не к модификатору блока
источник

Р

Роман in БЭМ
Elect Freak
спасибо, просто что если, скажем, разных размеров 500, ну в теории? хотелось бы тогда привязывать размер к странице, а не к модификатору блока
Что плохого в 500 модификаторах?

Но если хочется:

.page_view_example {
 font-size: 16,648px;
}

.list_size_inherit {
 font-size: inherit;
}
источник

EF

Elect Freak in БЭМ
Роман
Что плохого в 500 модификаторах?

Но если хочется:

.page_view_example {
 font-size: 16,648px;
}

.list_size_inherit {
 font-size: inherit;
}
Ну да, как вариант, спасибо.
Честно говоря, для меня font-size — больная тема. Все эти rem, em, когда в макете пиксели. Мне очень нравится, когда можно задать все в rem+em, а потом у :root менять плавно по @media, но в макет так не впишешься, приходится высчитывать кучу всего, или опять делать какой-нибудь font-size:10px на брейкпоинте макета и от него уже заново.
То есть между брейпоинтами понижать у root, например (desktop first если), а как только приходим к очередному — сброс и установка в соответствии с макетом. Потому что в макете пропорции меняются
источник
2020 May 11

MM

Mihail Mihail in БЭМ
привет всем! есть вопрос про внешнюю геометрию. Вот у меня компонент-кнопка.
<button class="base-button">click</button>
Кнопке надо прописать сброс (margin: 0). Однако поле — это внешняя геометрия, которая должна определяться в родителе. Как же тогда реализовать обнуление margin? Может быть, вот так (сброс внутри __inner)?
<div class="base-button">
 <button class="base-button__inner">click</button>
</div
>
источник

Р

Роман in БЭМ
источник

VG

Vladimir Grinenko in БЭМ
Спасибо, обновим
источник

VG

Vladimir Grinenko in БЭМ
fixed
источник

Р

Роман in БЭМ
👌 спасибо
источник
2020 May 17

BB

Bazhenov1e Bazhenov1... in БЭМ
Всем привет, помогите разобраться. как правильно писать стили.
блок {
шрифты
внутренняя геометрия
фон
}

елемент {
внешняя геометрия
}

модификатор {
все остальное
}

все что кроме внешней геометрии писать в блок или это модификатор type_origin?
источник

Р

Роман in БЭМ
Всё, кроме внешней геометрии, описываем в блоке. Как только появляется модификация — выносим + группируем.
источник

BB

Bazhenov1e Bazhenov1... in БЭМ
то есть удаляем эти стили из блока и вносим в модификатор. если нужно добавить анимацию или какое то поведение добавляем другой модификатор. блок остаётся для пространства имён?
источник

Р

Роман in БЭМ
Bazhenov1e Bazhenov1e
то есть удаляем эти стили из блока и вносим в модификатор. если нужно добавить анимацию или какое то поведение добавляем другой модификатор. блок остаётся для пространства имён?
Да. Но это по идее должно происходить на эволюцию: сначала описали в блоке (например, карточка товара) и элементах. Потом увидели ещё один блок (модификация карточки, меньшего размера и с другими элементами) — выносим размеры обоих карточек в модификацию размера.
источник

BB

Bazhenov1e Bazhenov1... in БЭМ
спасибо большое. можете порекомендовать несколько ресурсов сверстаных по бэм на ваш взгляд хорошо? хочу более подробно изучить и разобратся. а то у многих каждые понятие о бэм свои и не понятно чему верить. ещё раз спасибо.
источник
2020 May 18

Р

Роман in БЭМ
Bazhenov1e Bazhenov1e
спасибо большое. можете порекомендовать несколько ресурсов сверстаных по бэм на ваш взгляд хорошо? хочу более подробно изучить и разобратся. а то у многих каждые понятие о бэм свои и не понятно чему верить. ещё раз спасибо.
По своему опыту скажу — фигня это всё (это личное мнение, не «доказанный факт» и не «руководство к действию»). Глядя на чужой код, свой лучше не станет без конкретной задачи. Лично мне очень сильно помогл понять БЭМ их стек (BEMTREE, BEMHTML, i-bem.js), но там порог входа достаточно высокий. И за час-два-день тоже понимание может не прийти. Ты просто копишь этот опыт и потом — раз! Что-то щёлкает и пазл сразу складывается. И ты понимаешь, что у БЭМ есть только одно понятие (то, что довольно сложным академическим языком изложено на bem.info), а вот те, кто предлагают «свои» интерпритации, просто не осилили первоисточник и заменили пробел в знании какими-то своими додумками.
источник

Р

Роман in БЭМ
БЭМ — это как кататься на велосипеде — пока не получится, кажется сложно. Но потом это как-то само происходит.
источник