css - Chrome 隐藏后不会重绘 <div>

标签 css google-chrome browser redraw

我有一些 div 在悬停时显示,然后隐藏。但是,在 Chrome(19.0.1084.56 m,Windows XP)中,当您取消悬停时,Chrome 不会重新绘制它们,直到您执行滚动或调整窗口大小等操作。

http://jsfiddle.net/y7NdR/3/

我知道对我的 CSS 进行某些修改可以解决问题,例如删除 positionz-indexoverflow 属性,但我真的不想这样做——JSfiddle 是从我需要它们的完整站点。

任何人都可以解释为什么这个重绘问题会在 Chrome 中发生吗?有没有人有任何提示来修复它而不会弄乱我需要的 CSS?

最佳答案

很明显,这是一个 WebKit 错误。

我发现添加 -webkit-transform: scale3d(1,1,1); 修复了它:

http://jsfiddle.net/thirtydot/y7NdR/5/

我不确定此修复是否有任何缺点。我猜这是可行的,因为在 WebKit 内部,不同的代码用于呈现 3D 转换。

关于css - Chrome 隐藏后不会重绘 <div>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11002195/

相关文章:

javascript - 在 JavaScript 中跨浏览器调整浏览器窗口大小

css - 悬停时无法点击子菜单

javascript - native html5 视频播放器与任何其他视频播放器之间的区别

google-chrome - 如何从命令行启用Chrome功能?

javascript - 捕获并发送特定的可见选项卡

html - 如何将样式表与媒体查询链接起来,以便仅在满足媒体查询时才下载样式表

javascript - 使用 javascript 将参数发送到 java 应用程序

javascript - Css3 动画故障错误 Chrome 和 Firefox

php - CSS:将文本对齐到顶部,文本行之间没有间距

javascript - 图表在 Chrome 中呈现,但在 FF 和 IE 中不呈现