Доброго дня! Встал вопрос обернуть часть текста в отдельный тег strong, примерно как тут:
<h2 class="promo-title">
<strong class="bem">БЭМ</strong>
предлагает
<em class="promo-highlight">единые</em>
правила написания кода
</h2>
Как описать такую конструкцию в bemjson?
В реальности это выглядит так: https://github.com/bem-site/bem.info/blob/master/content/methodology/methodology.ru.bemjson.js#L76-L87
Но по сути вопроса:
ОООО все намного проще чем я думал, спасибо за ответ!
@tadatuta задам ещё вопрос в этой ветке, вы уж извините за тупость. Суть вопроса: имею такую конструкцию, при сборке не подхватывается стиль ".capture__text" для элемента "text", :
если код такой, то все ок
@webtehnology что подразумевается под «не подхватывается»? Класс такой на DOM-узле создается: https://goo.gl/ATzGct
@tadatuta при сборке сам стиль есть, не подхватывается capturetext.css который лежит: desktop.blocks/capture/text/capture__text.css
Закомментированный код на попадение в сборку влиять не может (если только там нет синтаксической ошибка и сборка просто не падает). Так что скорее всего он либо попадает в сборку и перекрывается стилями из файлов, появляющихся из-за закомментированных кусков, либо проблема где-то вне BEMJSON (опечатки в названии файлов или что-то в этом духе).
@tadatuta опечаток нет тк в такой конструкции стиль capture__text.css есть и текст имеет свои стили и все гуд. При этом если скажем так добавить элемент вообще к родителю к примеру page , то все срабатывает, если вложенность присутвует, то уже нет, я так понимаю это не нормально
при смене мест elem и block и закоментировании
//mix: {block:'promo', elem:'capture'},
так же все работаетточно работает так
А, все, я не заметил, что там есть родительский блок
i-font
.Принцип такой: если на узле явно не указан блок, то он восстанавливается из контекста, т.е. берется ближайший блок-родитель вверх по дереву.
Получается когда в одном блоке, есть и элементы и блоки, то для элементов обязательно задавать блок к которому он относится
Не совсем так. Посмотри мой пример выше — нет необходимости указывать блок для элемента
e1
, он определится автоматом.Но если картина выглядит так:
На этом видео, для элемента nameplate родительский блок header не указан, как он его подхватывает?