Jump to content
  • 0

HTML разметка по методологии БЭМ


Question

Доброго времени суток!

 

Осваиваю верстку по методологии БЭМ. Не совсем понятно как делать HTML разметку. Как я понимаю нужно именовать классами все теги и при этом все блоки состоят из элементов, дальше все элементы состоят из блоков, далее эти блоки состоят из элементов, далее эти элементы состоят из блоков и так далее?

То есть непонятно как определить где блок а где элемент, согласно вложенности?

Вот так например правильно? http://codepen.io/Andre_w/pen/EaLVJW?editors=100

 

Правильно я понял разметку по БЭМ или не совсем?

Edited by Andrew_007
Link to post
Share on other sites

4 answers to this question

Recommended Posts

  • 0

С методологией БЭМ не знаком, но я считаю, чтобы приступить к изучению таких примочек, сперва нужно знать верстку на достаточном уровне, чтобы голову не забивать не нужной ерундой в определенный период изучения.

Link to post
Share on other sites
  • 0

Вначале надо вылечиться от диватоза.

 

Потом уже смотреть на дизайн, ваш нынешний набор классов никуда абсолютно не годится. "content-box" -  что это? Это статья? Это примечание? Это новость?

 

Такое количество обёрток тоже никуда не годится. Для тега button давать класс button? Не верстайте на бутстрапе, это плохо сказывается на верстальнических скиллах.

 

Для "контентных" тегов (типа p) не давайте классы, это излишне. БЭМ не всегда нужен, ибо параграф - он и в Африке параграф.

 

Класс "side". И что это мне должно сказать? Что там внутри? Рекламные баннеры? Фотки голых тёток?

 

"content-box__buttom" (buttom?) а если придёт дизайнер и скажет, что теперь этот блок будет слева вверху?

 

Отредактировал ваше творение http://codepen.io/anon/pen/ZYoQye

 

з.ы. Ошибся у себя, скорее просто "news-subscribe"

Edited by antonKar
Link to post
Share on other sites
  • 0

Мое личное мнение что умение правильно именовать классы приходит просто с опытом (у меня тоже

проблемы с этим), ну а бэм многие воспринимают как просто нэймспайс а это ошибка, у бэма куча

полезных инструментов и комьюнити сейчас не маленькое. Для небольших проектов я смотрю в

сторону smacss.

Кстати даже разработчики бэма говорят что не стоит безумно все копировать, берите лучшее.

Edited by Sergik+
Link to post
Share on other sites
  • 0

Считаю, что БЭМ - это для очень больших проектов. Но если даже не БЭМ, то что-то другое. Любой порядок, любая архитектура CSS, но она должна быть. В противном случае в css будет хаос. Команда должна одинаково писать код.

 

Из БЭМа взял для себя принцип независимости блоков. Да, получается так, что при таком стиле код много где дублируется, разрастается. Однако при таком подходе любой блок можно легко продублировать на странице, проекте, другом проекте. Так блок легко дорабатывать. К тому же, такой код легко понимается другим верстальщиком. 

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • 3 Опрос

    You do not have permission to vote in this poll, or see the poll results. Please sign in or register to vote in this poll.
  • Обсуждения

    • Здравствуйте. Попробуйте начать с этого примера:
    • Требуется сделать строку ввода в которые вписывается опреленная ссылка(любая) например:"https://htmlforum.org/forum/123"  Нужно, чтобы по нажатию кнопки в веденной ссылке менялась половина до опреденного домена типа org с того что было например на "https://123htmlsuper.ru/forum/123" . То есть не просто с org на ru, а полностью от https до слеша перед org Дальнейший вывод этой ссылки или кнопки для перехода на эту ссылку  Нужно это для сайта в "блокноте" html css Help
    • Почему при адаптиве налазят блоки друг на друга?
    • Как правильно сделать оформить header используя только html и css  чтобы получилась как на этом макете Почему у меня правое меню постоянно плавает и как кнопку поиска правильно спозиционирорвать в самой форме чтобы она никуда не уезжала? Что не так в моем коде? https://jsfiddle.net/kjgydnfs/27/
    • Спасибо!!!     А почему в этом задании перезаписав значение  для псевдоэлемента after на то что ниже по коду, он перекрыл другой псевдоэлемент before, соответственно убрав половину видимой области этого псевдоэлемента. Почему, например, не before выше чтобы перекрыть after?
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy