Какой лучше использовать класс для модального окна бэм?
Заметил что многие используют класс modal, однако использование класса modal-window лучше не будет?
И в каких случаях лучше modal, а в каких лучше modal-window? Или без разницы?
Допустим при использовании формы в модальном окне, ее часто называют modal__form - модальная форма
А вот если так modal-window__form, то получается: модальное окно форма.
однако использование класса modal-window лучше не будет
Считаете что будет лучше - используйте.
И в каких случаях лучше modal, а в каких лучше modal-window
На вкус и цвет все фломастеры разные.
Перестаньте искать серебряную пулю. Не существует единственно правильных решений под все задачи.
Допустим при использовании формы в модальном окне, ее часто называют modal__form - модальная форма
Нет, это не модальная форма. Это форма, которая размещена внутри компонента modal. Если весь проект по бэму и существует отдельно компонент формы, то там должно быть такие классы: form modal__form. Второй - бэм микс для внешней геометрии внутри модалки.
Ну а теперь минутка размышлений:
modal-window лучше не будет?
Чем лучше? Что ещё у Вас бывает модальным, кроме окна? Лексическая избыточность, а так же излишняя конкретизация. Суть модальности не в том, что именно модально: окно, блок, или картинка.
Допустим при использовании формы в модальном окне, ее часто называют modal__form - модальная форма
А вот если так modal-window__form, то получается: модальное окно форма.
Форма это с большой вероятностью блок.
Поэтому, какой она там элемент не так и важно.
Более того, возможно даже не важно, что это именно форма элемент модального окна. Вполне может быть какой-то просто __inner или __container и т.д. modal__inner contact-form
или modal__inner form form--contact-us
И в каких случаях лучше modal, а в каких лучше modal-window? Или без разницы?
modal-window лучше, когда вы неленивы и не экономите байтики.
Названия классов хорошо бы делать лаконичными и понятными.
Большинству понятно что происходит, когда они читаю класс modal.
Но я могу вас увести в ещё больший тупик. Хотите?
Если думать о том, что js может отвалиться и в этом случае мы должны показать все эти формочки в потоке, то этот ваш блок modal становится модификатором --modal.
;)
К чему это всё?
К тому, что БЭМ, да и любую другую систему нейминга, можно повернуть по очень разной логике.