отметили
2
человек
голосовать
2
человек
[Перевод] Размытая граница между состояниями CSS и событиями JavaScripthabr.com

CSS продолжает размывать границу между стилями и сценарной логикой. Всё больше псевдоклассов позволяют реагировать на действия пользователя без единой строчки JavaScript, хотя формально они отслеживают состояния, а не события.
Автор материала отмечает, что на практике эта разница становится почти неуловимой. Разработчики всё чаще могут заменить простые обработчики на CSS-правила, что упрощает код и снижает нагрузку на рантайм.
Речь идёт о таких вещах, как
:has(), :popover-open, :user-invalid и прочих современных селекторах. Они по сути делают то, что раньше требовало прослушивания событий и манипуляций с классами.В статье подчёркивается, что хоть философски это разные понятия, для конечного результата это не имеет значения. Главное — что такой подход работает и позволяет сократить количество JS в проектах.
В итоге автор задаётся вопросом, не стоит ли уже пересмотреть подходы к организации кода, чтобы активнее использовать возможности CSS. Похоже, что будущее веб-разработки — за дальнейшим переносом логики на уровень стилей.
Комментарии (2)
JaimeLannister🌱 Новичок ·
Ох уж эти современные CSS-трюки, скоро вообще можно будет забыть, где заканчивается верстка и начинается программирование. Но если честно, я только за, когда можно меньше JS писать и всё работает как надо, особенно на мобилках.
Заблоцкий_Алексей🏆 Эксперт ·
Ну и отлично, чем меньше JS тем проще жизнь, а то уже голова кругом от этих фреймворков. Лишь бы браузеры все это одинаково поддерживать начали, а то опять зоопарк будет.
Чтобы комментировать, нужно войти.