悬停时改变块的填充

时间:2018-01-19 09:47:13

标签: html css

我想像这样做smt img

制作背景不透明度,并在悬停时显示两行文字和小图片(箭头)。 我知道,我可以使用其他图片作为背景(在Photoshop中制作不透明度),但我想知道如何使用CSS

.futured {
    padding: var(--product-padding);
    display: grid;
    grid-template-columns: repeat(4, 270px);
    grid-template-rows: 1fr;
    grid-gap: 30px;
}
.lamp{
    background-image: url(http://anti-naruto.ru/img/product-1.jpg);
    align-content: center;
    padding: 30% 15px 30%;
}
.lamp p:first-child{
    font-family: Montserrat;
    color:  #212121;
    font-size: 1.369em;
    font-weight: 700;
    line-height: 1.369;
    text-align: center;
    opacity: 0;
}
.lamp p:first-child:hover{
   opacity: 1; 
}

.lamp p:last-child{
    font-family: Montserrat;
    color:  #6c6c6c;
    font-size: 0.871em;
    font-weight: 300;
    line-height: 1.578;
    text-align: center;
    opacity: 0;
}

.lamp p:last-child:hover{
   opacity: 1; 
}

.lamp:hover{
    
}
<div class="futured">
            <div class="lamp">
                <a href="#">
                    <p>Fishnet Chair</p>
                    <p>Seat and back with upholstery made of cold cure foam</p>
                </a>
            </div>
            <a href="#"><img src="http://anti-naruto.ru/img/product-2.jpg" alt=""></a>
            <a href="#"><img src="http://anti-naruto.ru/img/product-3.jpg" alt=""></a>
            <a href="#"><img src="http://anti-naruto.ru/img/product-4.jpg" alt=""></ahttps://stackoverflow.com/questions/ask#>
        </div>

1 个答案:

答案 0 :(得分:0)

您需要使用绝对定位来实现此目的。请参阅我的代码:

.item {
  position: relative;
}

.item .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  background: rgba(255, 255, 255, 0.8);
}

.item:hover .overlay {
  opacity: 1;
}
<div class="item">
  <img src="http://anti-naruto.ru/img/product-1.jpg" alt="">
  <div class="overlay">
    <h2>Test</h2>
    <p>Description</p>
  </div>
</div>
<div class="item">
  <img src="http://anti-naruto.ru/img/product-1.jpg" alt="">
  <div class="overlay">
    <h2>Test</h2>
    <p>Description</p>
  </div>
</div>
<div class="item">
  <img src="http://anti-naruto.ru/img/product-1.jpg" alt="">
  <div class="overlay">
    <h2>Test</h2>
    <p>Description</p>
  </div>
</div>
<div class="item">
  <img src="http://anti-naruto.ru/img/product-1.jpg" alt="">
  <div class="overlay">
    <h2>Test</h2>
    <p>Description</p>
  </div>
</div>