如果元素是该元素的前一个元素,怎么可能在悬停时添加样式?

How it's possible add style on hover if element is an immediate previous of that element?

a:hover + ul{
display:none;
}
<li>
  <a>hover me</a>
  <ul> hide me</ul>
</li>
<li>
  <p>change my color</p>
  <ul>hover me</ul>
</li>

我知道如果它是紧接的下一个元素(如上所示),则可以使用“+”向特定元素添加样式。是否可以应用悬停,即使该元素是紧接的前一个元素?

css 选择器无法做到这一点,但您可以使用某种 hack 来更改带有 Flexbox 的元素顺序并使用 + 选择器。

div {
  display: flex;
  flex-direction: column;
}
strong:hover + p {
  color: blue;
}
p {
  order: -1;
}
<div>
  <strong>hover me</strong>
  <p>change my color</p>
</div>