在 Chrome/Safari/Firefox 中,如果用户点击 a
标签内的 span
,就会出现 :active
伪类也应用于包含元素/父元素。然而在IE中,似乎并不是这样,:active
只是作用于被直接点击的元素。
当我尝试在标记相当复杂的按钮上设置 :active
样式时,这带来了一些挑战。
A simple example of this is here on JSFiddle .在非 IE 浏览器中直接点击文本,然后比较 :active 状态与在 IE 中直接点击文本得到的状态。
有没有办法让 :active
状态传递给 IE 中包含的 a
?假设解决方案中没有 JS 作为约束。
最佳答案
我知道如何在 IE 中执行此操作的唯一方法是使用按钮元素,而不是链接元素,因为如果没有 Javascript,您将无法遍历 dom 直到父元素。
但需要注意的是,您不会再从 span 元素中获得黄色 :active 背景。希望这会有所帮助。
关于css - 即 : How to get :active to also work on parent element (CSS-only),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16154959/