我有一个为各种状态设计的按钮。特别是,按下 ( :hover:active
) 并聚焦 ( :focus
)。
但是,如果按钮被聚焦并被按下,它会:hover
在 Google Chrome / Safari 或:hover:active
Firefox 中更改。也不:hover:active:focus
如预期的那样去。
HTML 测试用例:
<button>Test</button>
CSS:
button{background:#000000;color:#FFFFFF;border:1px solid #000000;padding:10px}
button:hover{background:#FF0000;color:#000000}
button:active{background:#00FF00}
button:hover:active{background:#FFFF00}
button:focus{background:#0000FF}
button:hover:focus{background:#FF00FF}
button:active:focus{background:#00FFFF}
button:hover:active:focus{background:#FFFFFF}
这是一个简单的测试小提琴:http: //jsfiddle.net/CtKs8/。请注意,使用键盘聚焦按钮后(因此它变为蓝色),按下它会使它在 Chrome 中变为红色,或在 Firefox 中变为黄色(而不是白色)。
我的问题是:如何检测按下的、聚焦的元素(如:hover:active:focus
),或者至少让 Chrome:active:hover
像 Firefox 一样使用该状态?