@yarnstart
Превозмогание и React

Для чего делают ховеры на js?

пример - любой файл на яндекс диск например
Скриншот
5c5b390924f80390646074.jpeg

При ховере на кнопку "Сохранить на яндекс.диск" , на неё вешается класс "button2_hovered_yes" и через него меняется бэкграунд на псевдоэлементе before, почему сделанно имеено так, а не на css ? Если бы это не был яндекс, можно было бы списать всё на разработчика, но в данном случае, предположу, причина иная.
  • Вопрос задан
  • 704 просмотра
Решения вопроса 5
delphinpro
@delphinpro Куратор тега CSS
frontend developer
Можете не искать подвоха, его нет. Всё очень просто и прозаично — это их родной БЭМ в его чистейшей интерпретации. Они же используют полный стек БЭМа, а не только нотацию имен классов. Любой стиль определяется только классом. Каждый компонент лежит в отдельной папке, внутри js/css/img, стили разбиты еще на файлы — стили блока/элемента/модификатора в отдельных файлах. Всё это собирается чудо-машиной БЭМ.js.
Ответ написан
@Froggyweb
Ну на мобильниках нет ховера - это главный вариант, а состояние кнопки нужно
БЭМ опять таки.... стили то - не главное, если js сказал ishovered, сss ответил - есть. т.е. в цсс просто прописывается состояние
Ответ написан
AlibekKulseitov
@AlibekKulseitov
Люблю верстать и писать музыку
Мне кажется никто не даст тебе ответа)
У них могут быть много причин разных на это, которых мы не узнаем. Но возможно для статистики или чего-то еще
Ответ написан
Комментировать
wapster92
@wapster92 Куратор тега CSS
Яндекс огромен, и они все соки высасывают из своей же методологии БЭМ. Цепляют модификаторы, так как обычный ховер не умеет изменять классы. А так различные причины могут быть, прицепить класс одна из них.
Ответ написан
Комментировать
@yarnstart Автор вопроса
Превозмогание и React
Ответы с хабра здесь - https://habr.com/ru/company/yandex/blog/438598/#co...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы