html - Flexbox 图片库上的响应式文本叠加

标签 html css flexbox image-gallery

<分区>

所以我有这段代码来显示图片库。我想在每张图片的中间放置“box-text”类。但是如果我想使用 position: relative 它是行不通的。文本不希望高于图像底部,无论我如何在 css 中设置 top 属性。

<div class="container">  
  <div class="box">
       <img src="1.jpg" class="img-responsive">
       <div class="box-text"><h2>Some text</h2><h3>other text</h3></div>
   </div>

     <div class="box">
       <img src="2.jpg" class="img-responsive">
       <div class="box-text"><h2>Some text</h2><h3>other text</h3></div>
     </div>

    <div class="box">
       <img src="3.jpg" class="img-responsive">
       <div class="box-text"><h2>Some text</h2><h3>other text</h3></div>
     </div>
</div>

我的 CSS 样式:

.container{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
   }

.box img{
    z-index: 1;
  }


.box-text{
  position: relative;
  top:50%;
  left: 50%;
  z-index: 2;
}

最佳答案

使用 position: absolute 代替?您还可以使用 transform: translate 来帮助居中:

.box {
  position: relative;
}
.box-text{
  position: absolute;
  top:50%;
  left: 50%;
  z-index: 2;
  transform: translate(-50% -50%);
}

关于html - Flexbox 图片库上的响应式文本叠加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47163724/

上一篇:CSS:对话框底部超出屏幕底部,无法滚动到单击按钮

下一篇:javascript - 使用 Javascript 停止在刽子手游戏中包装字母

相关文章:

html - 三列,内部自动换行,但元素之间没有换行符

css - 将 css 修改为百分比而不是像素

html - 带有 Swiper 的 div 旁边的固定宽度 div 会导致奇怪的行为

html - 如何创建 3 列响应式布局?

html - getUserMedia() 权限被拒绝

javascript - 使用 JSON 响应的数据表

css - 媒体查询在 iPad 上无法完全运行

html - 在 Materialise CSS 中,如何将 Font Awesome 图标置于卡片面板的中心?

windows - flexbox 在 safari 5.1 窗口中不工作

javascript - 如何在不重新加载 DOM 的情况下单击交换网格中的元素