CSS中的鼠标按下选择器是什么?

mul*_*axp 100 html css css-selectors

我注意到按钮和其他元素具有默认样式,并且有3个步骤:普通视图,悬停/焦点视图和mousedown/click视图,在CSS中我可以更改普通视图的样式和悬停视图,如下所示:

button{
  background:#333;
  color:#FFF;
}

button:hover{
  background:#000;
  color:#EEE;
}
Run Code Online (Sandbox Code Playgroud)

但我怎样才能选择mousedown?我想要这样的东西:

button:mousedown{
  //some styling
}
Run Code Online (Sandbox Code Playgroud)

谢谢

jan*_*s86 142

我认为你的意思是活跃的状态

 button:active{
  //some styling
 }
Run Code Online (Sandbox Code Playgroud)

这些是链接在CSS中可能具有的所有伪状态:

a:link {color:#FF0000;}    /* unvisited link, same as regular 'a' */
a:hover {color:#FF00FF;}   /* mouse over link */
a:focus {color:#0000FF;}   /* link has focus */
a:active {color:#0000FF;}  /* selected link */
a:visited {color:#00FF00;} /* visited link */
Run Code Online (Sandbox Code Playgroud)

另见:http://www.w3.org/TR/selectors/#the-user-action-pseudo-classes-hover-act

  • 我不需要链接,不需要按钮,特别是因为在移动设备中,悬停会产生难看的故障。谢谢 (2认同)

sha*_*8ag 34

我发现这个行为就像一个mousedown事件:

button:active:hover {}
Run Code Online (Sandbox Code Playgroud)

  • 您的示例在Firefox上对我有用。 (2认同)
  • 这正是我所寻找的。在我尝试过的每台设备上,这种组合的行为确实就像鼠标按下选择器一样。谢谢。我相信这是正确的答案。 (2认同)

小智 27

Pro-tip注意:出于某种原因,CSS语法需要在相同元素之后:active片段才能生效:hover

http://www.w3schools.com/cssref/sel_active.asp

  • @InTheZone 当然,它可以在被 :hover'ed 之前变为 :active。您可以使用不悬停的键盘激活它。 (3认同)
  • 对CSS进行评估是有道理的;元素在变为:hover之前不能变为:active。 (2认同)
  • 同样,`:active`必须在`:focus`之后才能起作用。感谢您指出这一点,我真的很想知道为什么我的CSS无效! (2认同)

Mee*_*ees 5

我最近发现:active:focus在 css 中做同样的事情就像:active:hover你需要覆盖自定义 css 库一样,他们可能会同时使用两者。