图像上的黑色透明覆盖

时间:2015-05-29 09:43:51

标签: html css image opacity

当你将鼠标悬停在图像上时,我试图在图像上留下浅黑色的叠加层(就像文字一样)抱歉,我是css和HTML的新手!

帮助将不胜感激

HTML

<div id="con">
   <div id="box1">
      <p id="text1">
         <a href="url">DESTINATIONS</a>
      </p>
      </p>
      <p id="text2">
         AMALFI<BR>SORRENTO<BR>POSITANO</a>
      </p>

      <p id="text3">
         <a href="url">THINGS TO DO</a>
      </p>
      </p>
      <p id="text4">
         TOURS<BR>MUSUEMS<BR>SHOPPING</a>
      </p>
</div>

CSS

#con {
   width:1024px;
   height:670px;
   background-color: #161717;
}


#box1 {
   float: left;
   font-size: 25px;
   width: 388px;
   height: 477px;

   background-image: url(media/trying1.png);
   background-size: cover;
   margin-left: 120px;
   margin-top: 90px;
}


#text1 {
   z-index:100;
   color:white;
   font-size:30px;
   text-align: center; 
   margin-top:80px;
   line-height:55px;
   opacity: 0;
   transition: all 0.5s;
}

#box1:hover #text1 {
   opacity: 1;
}   

2 个答案:

答案 0 :(得分:4)

这可以通过以下方式完成:

之前或之后
#box1{
  position:relative;
}

#box1:before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background:black;
    opacity:0;
    z-index:0;

}

#box1:hover:before{
 opacity:.6;   
 transition: all 0.5s;
}

#box1 > *{
    position:relative;
    z-index:1;
}

http://jsfiddle.net/4bo4zju7/3/

答案 1 :(得分:1)

CS3很棒!您不再需要JS来实现简单的翻转效果。 Gopalraju上面的代码应该可以工作,下面的例子也是如此。您可以随意使用它并根据需要使用代码。

父div具有黑色页面背景,并且imgdiv将鼠标中的所有内容更改为不透明度,鼠标滚过div。在这种情况下,图像在div内。

有几种方法可以做到这一点。这只是另一个广告。祝你好运。

&#13;
&#13;
.parentdiv {
    background-color:#000;
    height:100%;
    width:100%;
    }

    .imgdiv {
      padding:30px;
    }

    .imgdiv a{
    	opacity: 1;
    	filter: alpha(opacity=100);
     	-webkit-transition: opacity 0.5s linear;
    }

    .imgdiv a:hover {
    	opacity: 0.5;
    	filter: alpha(opacity=50);
     	-webkit-transition: opacity 0.5s linear;
    }
&#13;
<div class="parentdiv">
  <div class="imgdiv">
    <a href="http://www.domain.com.au/link.html">
      <img src="http://placehold.it/350x150" alt="image" height="150" width="350">
    </a>
  </div>
</div>
&#13;
&#13;
&#13;