css - 即 : How to get :active to also work on parent element (CSS-only)

标签 css internet-explorer

在 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/

相关文章:

CSS 中心,固定导航

css - 在字体大小中使用相对值以提高可访问性是否仍然有用,还是仅适用于 IE6?

javascript - 折叠侧边栏时增加 div 宽度大小

javascript - 下拉菜单不粘在 LI Parent 上

javascript - 当浏览器不活动时 jQuery 和 setTimeout 停止工作

javascript - IE 9 及以下版本在显示滑出侧边栏菜单时出现问题

css - 为什么 firefox 和 IE 不把图片放在一个 li 中

jQuery .width() 条件始终在 IE 中触发

html - css @media 显示问题,需要澄清

html - 是否可以将任何 div 放置在网页中的所有其他内容之上?