Ответ 1
Короткий ответ no:)
Но вы можете просто использовать один и тот же CSS для зависания так:
a:hover, .hoverclass {
background:red;
}
Может быть, если вы объясните, почему вам нужен добавленный класс, может быть лучшее решение?
Можно ли добавить новый класс CSS к элементу на :hover
?
Как и для jQuery, но переведенный в CSS:
$(element).addClass('someclass');
Короткий ответ no:)
Но вы можете просто использовать один и тот же CSS для зависания так:
a:hover, .hoverclass {
background:red;
}
Может быть, если вы объясните, почему вам нужен добавленный класс, может быть лучшее решение?
Поскольку каждый дал вам ответы jQuery/JS на это, я предоставлю дополнительное решение. Ответ на ваш вопрос по-прежнему отсутствует, но с помощью LESS (предварительный процессор CSS) вы можете сделать это легко.
.first-class {
background-color: yellow;
}
.second-class:hover {
.first-class;
}
Проще говоря, при каждом наведении курсора на .second-class
он даст все свойства .first-class
. Обратите внимание, что он не будет добавлять класс постоянно, только при наведении. Вы можете узнать больше о LESS здесь: Начало работы с МЕНЬШЕ
Вот и способ SASS:
.first-class {
background-color: yellow;
}
.second-class {
&:hover {
@extend .first-class;
}
}
CSS действительно не имеет возможности изменять объект таким же образом, как JavaScript, поэтому, короче говоря, нет.
:hover
- псевдослот, поэтому вы можете разместить свои объявления CSS:
a:hover {
color: #f00;
}
Вы также можете использовать список селекторов для применения объявлений CSS к зависающему элементу или элементу с определенным классом:
.some-class,
a:hover {
color: #f00;
}
Только с помощью CSS, нет. Вам нужно использовать jQuery, чтобы добавить его.
почему @Marco Berrocl получает отрицательную обратную связь, и его ответ абсолютно прав как насчет использования библиотеки для создания некоторой анимации, поэтому мне нужно вызвать класс при наведении на элемент, а не копировать код из библиотеки, и это заставит меня замедляться.
поэтому я думаю, что не нужно отвечать, и во многих случаях он должен использовать jquery или javascript.
Вот как вы это делаете:
var e = document.getElementById('myIdName');
var value = window.getComputedStyle(e, null).getPropertyValue("zIndex");
alert('z-index: ' + value);