Имаше рано BEM. Сега Хари Робъртс насърчава и използва от много не-разработчиците на Яндекс. Използва се за създаване на тяхното пространство от имена и логически дялове разделяне.
BEMIT: Namespaces
Разширено използване на представки и наставки от Хари Робъртс. Опитвайки се да се опишат отношенията между независими единици по отношение на SMACSS и OOCSS.
Стил, Хари Робъртс
Много хора като модификатори на чужд формат, чрез "-", то може да се чете.
стил camelCase
И след camelCase - по-разбираемо!
Стил без долна черта
Някои отиват още по-далеч и да се замени "__" да "-". camelCase само гарантира, че ще се разбере къде блока, и когато елемента.
съкратените модификатори
съкратените модификатори
Правилно да се напише така:
.блок-name__elem _key_value
Или това:
.blockName__elem --key_value
Не durakoustoychivosti модификатор може да се движи без блок:
съкратените модификатори
- Загубата смесва блокове с модификатори!
- не можем да използваме Пълен BEM стека!
Разтворът може да бъде влизане в модификатори на колоните
И можете да juzat Jade и Yandex не е писал на HTML код на оръжие, те BEMJSON.
Тя miksovaniya CSS-блок и JS-блок на дом-възел. Canonical BEM счита, че те не са необходими, тъй като JS-функционалност то няма смисъл да се отделят от уреда. Хари Робъртс и чуждестранни разработчици на Yandex използват активно и насърчават: защото разделение го прави лесен за копиране на CSS-устройството, без да е свързана JS.
Алтернативни реализации: OPOR
Добре известен пример за използването на методология BEM трета страна разработчик - Артьом Sapegin
Алтернативни реализации: Bevis
Диалектът BEM, с по-строги правила за максимална надеждност оформление измислен Вадим Makishvili за Yandex.Maps.
Алтернативни реализации:
Google MDL
блок библиотека от Google, CSS-реализация на техния дизайн Material изобретен за Android.
Пълен BEM Stack за HTML
Можете да създадете свой насока
BEM осигурява само основен набор от правила, за внедряване, специфични и синтаксиса решите сами.
Всичко е BEM
тънкости BEM
BEM включва много техники
Нещо, което ние дискутирахме с вас / споменато:
- Защо не сложи блоковете
- BEM-инструменти и алтернатива tulzy за опростена писмена форма именуване BEM-в HTML:
- BEML - HTML-предпроцесорни за BEM
- posthtml-BEM - едно и също нещо, но през PostHTML
- bemto - техни подобни за писане BEM в Jade
- miksovaniya
- какво именни пространства потребността / представки (включително js- блокове)
Но голяма част остава зад кулисите
- Не мога да ви кажа как да се прекъсне блокове към файлове и поставете във файловата система
- Защо не искате да използвате, не се използва @extend и Sass
- За себе си I-bem.js
- и абстрактно единици (i-)
- ... контекст блок (т)
- ... Holder блокове (х-)
- ... нива на замяна
- ... глобалната модификатор
- ... и за BEM история - защо така?
прочети повече
Свързани статии