悬停图像上的文本填充

时间:2019-07-03 00:12:25

标签: css squarespace

我成功地将CSS代码添加到我们的Squarespace网站上,以使图库图像具有悬停时出现的每张图像的标题。问题在于标题在每个图像下方留有多余的空白(约15像素)。我希望每个图像在顶部和底部相互接触,就像在侧面一样。

我的代码在下面,这是页面的链接:https://baikart.com/artists2

我尝试使用填充代码,但是这会推挤图像,我只希望空白消失。

.summary-content {
    position: absolute;
    color:#fff;
    top: 50%;
    left: 50%;
    opacity: 0;
    transition: all .5s ease;
    transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
}

#Main-content {
    .summary-content {
        position: absolute;
        color:#fff;
        top: 50%;
        left: 50%;
        opacity: 0;
        transition: all .5s ease;
        transform: translate(-50%,-50%);
        -webkit-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
        -moz-transform: translate(-50%,-50%);
    }
}

.summary-item:hover {
    img {
        -webkit-filter: brightness(50%);
        filter: brightness(50%);
        transition: all .5s ease;
    }

    .summary-content{
        opacity: 1;
    }
}

2 个答案:

答案 0 :(得分:0)

.container {
  position: relative;
  width: 50%;
}

.image {
  display: block;
  width: 100%;
  height: auto;
}

.overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  transition: .5s ease;
  background-color: rgba(0,0,0,0.8);
}

.container:hover .overlay {
  opacity: 1;
}

.text {
  color: white;
  font-size: 20px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
}
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
<h2>Fade in Overlay</h2>
<p>Hover over the image to see the effect.</p>
<div class="container">
  <img src="https://cdn.pixabay.com/photo/2017/08/30/07/56/money-2696229_960_720.jpg" alt="Avatar" class="image">
  <div class="overlay">
    <div class="text">Hello World</div>
  </div>
</div>
</body>
</html>

希望该解决方案会有所帮助

答案 1 :(得分:0)

通过CSS编辑器插入的以下CSS将消除图像之间的间隙:

#collection-5d1bb9f4d43d220001cae017 .summary-thumbnail-container.sqs-gallery-image-container {
  margin-bottom: 0;
}

CSS专门通过使用其“收藏者ID”来确定“艺术家2”收藏的对象,该收藏ID是在id元素上设置的body属性。这样,如果您创建了一个不同的集合,并且希望以不同的格式进行格式化,那么它将不受CSS的影响。如果要全局应用样式,请在开头删除#collection-.... ID选择器,并通过类进行定位。这也意味着,如果要定位其他集合(但不全局应用样式),则需要在上面的选择器中更新集合ID。