0

我很难理解为什么在:hover伪类之后有一个选择器,而不是在它之前。这如何以及为什么起作用?

这有效

div li:hover > ul 
{
display: block;
}

为什么这行不通?

div li > ul:hover
{
display: block;
}

我做了很多搜索,试图弄清楚为什么要在它之后放置一个或多个选择器(:hover 伪类);以及它如何针对它的详细信息,但我似乎找不到任何关于它的信息。提前谢谢你!

4

1 回答 1

6

您的选择器在逻辑上是不同的。

li:hover > ul匹配ul一个悬停的内部li

li > ul:hover匹配一个悬停ul在任何li.

默认情况下,您ul的 s 可能是隐藏的,因此li > ul:hover不会匹配任何内容。
相反,一旦悬停,li:hover > ul匹配仍然隐藏的,并显示它。ulli

于 2013-10-16T18:07:50.363 回答