Я унаследовал следующий HTML (который не может быть изменен), и ему было поручено CSS навести курсор, чтобы все они имели новый цвет фона, а текст белый. Я не могу заставить их всех меняться, а текст будет белым при наведении указателя мыши. Может ли кто-нибудь сообщить, какой будет правильный CSS?
CSS, который НЕ РАБОТАЕТ
ul.dynamic:hover > li.dynamic:hover > a.dynamic:hover >span.additional-background:hover > span.menu-item-text:hover;
ul.dynamic > li.dynamic > a.dynamic > span.additional-background > span.menu-item-text:hover
HTML
<ul class="dynamic">
<li class="dynamic">
<a class="dynamic">
<span class="additional-background">
<span class="menu-item-text">
HomePage
</span>
</span>
</a>
</li>
</ul>
Вы можете просто попробовать это
ul.dynamic:hover > li.dynamic:hover > a.dynamic:hover > span.additional-background:hover > span.menu-item-text:hover
{
background:red;
color:white;
}
Вы также можете добавить другие свойства, которые хотите изменить.
Наконец, мы получили наш стиль, чтобы посмотреть, как мы это хотели. Нам пришлось начинать работу с более высокого узла и (по какой-то причине) должны были включать обе следующие строки:
.ms-core-listMenu-horizontalBox:hover li.static > ul.static > li.static > .ms-navedit-linkNode:hover,
li.static > ul.static > li.static > a.static > span.additional-background:hover > span.menu-item-text:hover
Спасибо всем за вашу помощь!
Вы не можете использовать Semicolon(;)
для объединения двух стилей.
Попробуйте сделать стиль css, разделяющий селектора запятой:
ul.dynamic:hover > li.dynamic:hover > a.dynamic:hover >span.additional-background:hover > span.menu-item-text:hover,
ul.dynamic > li.dynamic > a.dynamic > span.additional-background > span.menu-item-text:hover
Трудно сказать, потому что вы не указали, какой элемент CSS нужно изменить. Я предполагаю, что background-color
span.additional-background
должен быть изменен, а color
текста span.menu-item-text
должен измениться, и в этом случае он будет выглядеть так:
ul.dynamic > li.dynamic > a.dynamic:hover > span.additional-background {
background-color: #333;
}
ul.dynamic > li.dynamic > a.dynamic:hover > span.additional-background > span.menu-item-text {
color: #FFF;
}
Оба они неоправданно специфичны, но я предполагаю, что они должны быть для того, чтобы переписать все существующие CSS, которые вы нам не показывали. На самом деле первый селектор может быть просто a.dynamic:hover > span
а второй может быть a.dynamic:hover > span > span
.
color
иcolor
background-color
?