jquery - 创建图像叠加层

标签 jquery html css

我在页面上有一张图片和一个带有信息文本的 div Code Pen Example .

<div>
  <img src="http://placehold.it/400x200"/>
  <div class="info">
    <a href="#">GO</a>
    <span>Title</span>    
    <p>Some information text</p>
  </div>
</div>

我希望 div 信息不可见,当我将鼠标移到图像上时,div 会显示在图像上,具有透明度,并且与图像的宽度和高度完全相同。

我希望 div 信息内的 anchor 位于右上角。我该怎么做?

最佳答案

不需要 jQuery。

需要相对定位父元素,.overlay。如果您希望它采用 img 元素的尺寸,您还可以将显示更改为 inline-block。绝对定位 .info 元素以采用与父元素相同的大小。使用 rgba() 颜色实现透明度。使用选择器 .overlay img:hover + .info, .info:hover.info 元素的显示更改为悬停时的 blockimg.info 元素上。

Example Here

.overlay {
    display:inline-block;
    position:relative;
}
.info {
    display:none;
    background-color: rgba(240,240,240,0.5);
    padding: 8px;
    text-align: center;
    position:absolute;
    top:0; right:0;
    bottom:0; left:0;
}
.overlay img:hover + .info, .info:hover {
    display:block;
}

如果您希望叠加层淡入淡出/过渡,只需操纵元素的 opacity 而不是更改显示。 (example) .

要获得更好、更详细的答案 - 请参阅 my other answer here .

关于jquery - 创建图像叠加层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23703882/

相关文章:

javascript - PhoneGap iOS 应用上的页面加载闪烁

javascript - 包含 html 片段作为模块

css - 为什么这个 css 成为先例?

javascript - 从外部js文件调用函数/嵌套函数

ios - 此按钮上的样式未显示在移动设备 (iOS) 上

javascript - 测试 extjs 应用程序

javascript - 使用按钮单击禁用 anchor 标记

html - 两个 div,一个规定宽度,一个未知。如何解决这个问题

php - 在 PHP 生成的 JSON 字符串中输出 HTML

javascript - 当我单击操作下拉菜单时,选项显示在滚动条中,为什么?