0

什么可以防止 CSS:hover伪类被触发,无论是使用 CSS 还是 JavaScript?

我正在尝试在第三方的自定义日历控件中调试一个非常棘手的问题。客户希望在用户将鼠标悬停在日期上时突出显示日期——这是非常标准的东西。但是有些东西顽固地阻止了:hover班级按预期工作。

我可以使用选择器定位日期单元格并background-color毫无问题地操作。但是,将:hover伪类添加到该选择器不起作用。

不幸的是,我无法发布任何代码,因为这是一个需要帐户才能使用的私人应用程序。老实说,意大利面太多了,我什至不知道要包括什么……控件是用纯 JS 构建的,这里没有 jQuery,没有siree。几百行 JS,加上几百行 CSS……不知道使用 jQuery 日历控件有什么问题。

是否有一组已知的可以破坏的东西:hover?可能是事件传播问题,由事件处理程序返回或其他原因引起falseonhover吗?

调试此问题的任何其他建议?使用浏览器工具不是很有效,因为:hover除非我悬停,否则不会触发规则。抓到 22 那里。

编辑:这个答案似乎是一个可能的罪魁祸首。他们肯定在组合中使用了一些绝对定位......

编辑 2:使用 Chrome 的开发人员工具手动应用:hover状态有效,确认我的选择器不是问题。有些东西阻止了:hover状态被触发。日历控件被实现为一个 HTML 表格,每周在一行中,每个日期在一个单元格中。这看起来确实是一个分层问题,但是向z-index单元格添加高电平并没有任何作用。

4

3 回答 3

3

Chrome 的“开发者工具”允许您切换元素的状态。也许您可以尝试一下,看看您是否能更深入地了解您遇到的问题?

Chrome 开发者工具 - 样式 - 切换元素状态

于 2012-09-30T21:53:19.460 回答
1

它往往与元素的分层有关。通常,这可以通过重新分层 HTML 以使锚点位于顶部或将其设置为position: relative.

于 2012-09-30T23:10:25.267 回答
0

你可能有!importantunhover 会阻止悬停。

于 2012-09-30T22:09:31.160 回答