问题:
您有一个 div 容器,根据宽度变化按比例调整的响应高度。在这个容器中,您有一个具有不同高度的图像。您的挑战是垂直对齐容器中间的图像,无论其高度如何。
解决方案:
为了在这个响应式环境中实现垂直对齐,我们引入一种创新方法,涉及在图像旁边放置内联元素。
垂直对齐:
这种方法的好处:
响应式容器:
为了使容器的高度与其宽度灵活,我们在填充上使用百分比值 - top 属性:
此填充技术也可以应用于子 div 或 CSS伪元素。
内容放置:
Padding-top 在容器内内容的上方和/或下方创建过多的空间。为了解决这个问题,我们将内容包含在包装元素中:
最终实现:
结合这些技术,我们实现了我们的目标:
<div class="responsive-container"> <div class="dummy"></div> <div class="img-container"> <img src="image.jpg" alt="Image"> </div> </div>
.responsive-container { width: 60%; height: 300px; /* Example height for demo purposes */ position: relative; } .img-container { text-align: center; font: 0/0 a; } .img-container:before { content: ' '; display: inline-block; vertical-align: middle; height: 100%; } .img-container img { vertical-align: middle; display: inline-block; max-height: 100%; /* Optional: Ensures image stays within container */ max-width: 100%; /* Optional: Ensures image stays within container */ }
示范:
【垂直对齐响应式 Div 中的图像](https://codepen.io/cristianorocha/pen/dywbQMV)
以上是如何在响应大小的 Div 中垂直居中图像?的详细内容。更多信息请关注PHP中文网其他相关文章!