响应式设计:将文本浮动到图像上

时间:2017-08-09 01:15:46

标签: html css hover responsive floating

我还没有找到答案。我有一个div与图像一起成长:悬停。我想覆盖一些在悬停期间是静态的文本,并且不会干扰锚标记。我还需要这种设计才能做出响应,这样文本就会始终位于图像的中间。我尝试过Display:Table和Table-cell ......我的CSS的某些部分与我尝试的所有内容都不一致。

我已经能够将文本放在Absolute div中,但我不想指定文本的确切像素位置,因为它没有响应。

<style>
#AOB{
height: 700px;
position: relative;
padding: 30px 200px 0px;
}


.innerBlock {
float: left;
display:block;
position: relative;
}

#AOB .innerBlock {
width: 33.2%;
height: 50%;
overflow:hidden;
}

#AOB img{
height:100%;
width:  100%;

}

#AOB img:hover{
-webkit-transform:scale(1.05);
-ms-transform:scale(1.05);
transform:scale(1.05);
transition: all 0.2s ease;
}


.innerBlockText{
position:absolute;
top: 100px;
left: 100px;
z-index:1;
}



</style>

<div id="AOB">
  <div id="one" class="innerBlock">
    <a href = "http://www.google.com">
     <div class="innerBlockText">
     beach
     </div>
     <img  src="https://www.weebly.com/editor/uploads/2/1/6/7/21673280/custom_themes/537557073923231080/files/images/beach.png">
    </a> 
  </div>

  <div id="two" class="innerBlock">
    <a href = "http://www.google.com">
     <img src="https://www.weebly.com/editor/uploads/2/1/6/7/21673280/custom_themes/537557073923231080/files/images/beach.png">
    </a>
  </div>

  <div id="three" class="innerBlock">
    <a href = "http://www.google.com">
     <img src="https://www.weebly.com/editor/uploads/2/1/6/7/21673280/custom_themes/537557073923231080/files/images/beach.png">
    </a>
  </div>

  <div id="four" class="innerBlock">
    <a href = "http://www.google.com">
    <img src="https://www.weebly.com/editor/uploads/2/1/6/7/21673280/custom_themes/537557073923231080/files/images/beach.png">
    </a>
  </div>

  <div id="five" class="innerBlock">
    <a href = "http://www.google.com">
     <img src="https://www.weebly.com/editor/uploads/2/1/6/7/21673280/custom_themes/537557073923231080/files/images/beach.png">
    </a>
  </div>

  <div id="six" class="innerBlock">
    <a href = "http://www.google.com">
     <img src="https://www.weebly.com/editor/uploads/2/1/6/7/21673280/custom_themes/537557073923231080/files/images/beach.png">
    </a>
  </div>



</div>

谢谢。

1 个答案:

答案 0 :(得分:1)

添加

.innerBlockText {
    top: 50%;
    transform: translate(-50%, -50%);
    left: 50%;
}

(当然,将它放在当前的选择器中)。上/下50%将其移至与父母相关的位置;翻译使其与自身相关,使其居于中心。

https://jsfiddle.net/9Lvmjt5g/4/