gpt4 book ai didi

html - 如何在固定高度的div中垂直居中可变高度的div

转载 作者:行者123 更新时间:2023-11-28 13:13:41 25 4
gpt4 key购买 nike

我正在尝试创建一个产品图像 div,我已经尝试了几乎所有方法,仍然无法解决一个小问题,我只想将我的图像垂直居中在一个固定高度的盒子中,图像的大小会有所不同新产品形象。这是我的代码HTML:

<div class="main-pic">
<ul>
<li><img src="images/extra/laptop.jpg"></li>
<li><img src="images/extra/laptop1.jpg"></li>
<li><img src="images/extra/laptop2.jpg"></li>
<li><img src="images/extra/laptop3.jpg"></li>
<li><img src="images/extra/laptop4.jpg"></li>
<li><img src="images/extra/laptop5.jpg"></li>
</ul>
</div>

CSS:

.main-pic{width:430px;height:430px;border:1px solid black;margin:20px auto;display:block;float:none;overflow:hidden;}
.main-pic ul{width:10000px;}
.main-pic ul li{width:430px;height:430px;float:none;display:block;margin:-25% auto auto;position:relative;top:50%;}
.main-pic ul li img{max-width: 400px;height:auto;max-height: 400px;width: auto;}

仅供引用,我已经尝试过 verical-align:middle; display:tabletable-cell可能是我一直以错误的方式使用它们...请帮助我:(

最佳答案

要在固定高度的父元素中垂直居中元素,请设置它们的 vertical-align: middle。添加显示为 inline-blockwidth 为零且高度为全的附加元素。

示例 HTML:

<div class="container">
<div class="height"></div>
<img ...>
<img ...>
</div>

示例 CSS:

.container {
height: 300px;
}
.height {
display: inline-block;
height: 100%;
vertical-align: middle;
width: 0;
}
.container > img {
vertical-align: middle;
}

演示在 JS Bin

如果您知道容器的高度,您还可以将其 line-height 设置为相同的值,而不是使用 div.height

关于html - 如何在固定高度的div中垂直居中可变高度的div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15205707/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com