Я в нескольких докладах про БЭМ слышал, что основной причиной для введения таких длинных классов было ускорение работы в Internet Explorer. Актуально ли это сейчас? Есть ли у вас бенчмарки?
P.s. вспоминается аналогичная история с on-click против data аттрибутов :)
Не как ответ на вопрос, а дополнительная информация: Тут важно упомянуть, что тестировать один селектор не имеет смысла.
.block.mod
может оказаться даже быстрее, чем.block_mod
, если он один-единственный на странице. Поскольку браузер читает селектор справа налево и ищет, не задекларированы ли какие-либо свойства то тут важен не сферический селектор в вакууме, а количество возможных комбинаций на конкретной странице.Причиной было не скорость работы в MSIE, а то, что он вообще не поддерживал множественные классы в CSS.
А потом уже нашлись дополнительные плюси в виде использования миксов. http://ru.bem.info/forum/issues/83/
Скорость селекторов рассматривалась в этом посте: http://ru.bem.info/forum/issues/-55/
А сейчас существует еще вообще проблема скорости?
@varya Декабрь 2012: https://speakerdeck.com/jonrohan/githubs-css-performance
http://benfrain.com/css-performance-revisited-selectors-bloat-expensive-styles/
Я читала эту статью. Он просто сравнивает как ведет себя один селектор на странице, что не имеет никакого смысла.