html - 悬停时延迟图像显示

标签 html css

我希望在将鼠标悬停在特定元素上一秒钟后显示图像。

我查看了 SO 上的旧帖子,但没有发现任何关于显示图像的信息 - 只是修改它。

现在,这是我在 CSS 中拥有的示例:

a.type1,
a.type2{
    position: relative;
}

a.type1:hover:after,
a.type2:hover:after{
    content: url(imageurlgoeshere);
    position: absolute;
    z-index: 3;

}

我试过添加 transition-delay 和其他方法,但是我很确定它不起作用,因为内容不是可动画的属性。

虽然我认为使用不透明度可能有效,但我不希望在用户悬停之前呈现图像。

我试过使用背景图片,但遇到了一些麻烦。 在某些情况下,由于我可以假设元素消失并失去其悬停状态,光标会闪烁。

最佳答案

您可以使用 transition 通过 opacity 属性来隐藏和显示图像,而 transition-delay 用于延迟不透明度的变化。

在这个例子中,pointer-events: none放置在伪元素上,这样它们只会在链接本身悬停时显示。

这是一个updated fiddle :

a.type1,
a.type2 {
  position: relative;
}
a.type1:after,
a.type2:after {
  position: absolute;
  content: url(http://i.stack.imgur.com/rG8mD.png);
  transition: opacity 2s;
  opacity: 0;
  pointer-events: none;
}
a.type1:hover:after,
a.type2:hover:after {
  opacity: 1;
  transition-delay: 1s;
}
<a class="type1">Type One</a>
<br />
<a class="type2">Type Two</a>

关于html - 悬停时延迟图像显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37405276/

相关文章:

html - 有序列表 - html : How to make point(ol{style-list:disc;}) position in midde height of image?

css - 为什么填充和显示 CSS 属性适用于 Chrome 中的 tr 元素?

html - 多个 CSS 背景刷新到浏览器顶部

html - 如何从页面边缘移动降低的div

javascript - novalidate 属性到特定字段或整个页面

css - 当最后一个图像或 div 从浏览器顶部到达指定点时如何锁定或修复滚动?

javascript - 自动保存包含多个项目的PHP表单并使用ajax保存在mysqli中

javascript - 为移动浏览器设置全尺寸背景图像的替代方法

css - Jqplot 条形图悬停颜色变化并显示自定义工具提示

php - 如何使用按钮选择列表的最新或下一个元素