Это происходит потому, что элемент <a>
имеет свой собственный стиль при наведении, и вам нужно явно перезаписать его, чтобы получить другой эффект при наведении.
В этом случае вы хотите, чтобы его цвет былбыть таким же из родителей.По этой причине вы можете применить color: inherit
для достижения результата:
.menu li:hover {
color: red;
}
a {
color: inherit;
}
.menu a:hover {
color: red;
}
<div class="menu">
<ul>
<li id="menu-item">
<a href="">Blog</a>
<span class="sub-menu-open">▲</span>
</li>
</ul>
</div>