Знают ли длинные имена классов CSS влияние на производительность?

Я создаю JS script с включенной темой, чтобы запускать несколько тем, у каждого класса есть префикс - это, однако, делает классные имена несколько длинными.

У меня также есть правила CSS в зависимости от того, имеет ли элемент больше классных имен, чтобы обеспечить специальные эффекты.

Мой вопрос будет более длинным. Имя класса CSS влияет на производительность или будет только неправильное/ошибочное/неэффективное использование селекторов замедляет производительность?

Ответ 1

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

В общем, вы должны начать думать о такой оптимизации производительности, если вы начнете сталкиваться с проблемами производительности. Лучше использовать выразительные имена для повышения удобочитаемости вашего css (так же, как и для любого кода), прежде чем оптимизировать возможные проблемы с производительностью.

Для селекторов они, вероятно, будут иметь большее влияние на производительность, поскольку в зависимости от сложности селектора и размера вашей DOM значительная (значительная по сравнению с длинными именами классов) сумма кода может быть выполнена. Однако попробуйте сделать наиболее читаемый/понятный селектор и только начинайте оптимизировать его, если есть измеримое влияние на производительность (вы можете использовать инструменты для разработки firebug или chrome для профилирования).

Ответ 2

будет больше значений класса CSS, влияющих на производительность, или будет только неправильное/неправильное/неэффективное использование селекторов замедлить производительность?

более длинные имена классов? - Я не думаю, что это важно, я предпочитаю короче, но с некоторыми приложениями или плагинами это невозможно - PageSpeed ​​и Y! Slow или любые другие сайты рекомендаций по эффективности, которые я посетил, укажите длину имени класса как проблему - Но определенно более эффективный весь селектор, тем лучше производительность