gpt4 book ai didi

javascript - 自适应布局上的垂直自适应图像对齐

转载 作者:行者123 更新时间:2023-11-29 19:53:24 24 4
gpt4 key购买 nike

这是我的代码:

HTML

<html>
<body>
<div id="id">
<div class="one">
<img>
</div>
<div class="two">
<img>
</div>
<div class="one">
<img>
</div>
</div>
</body>
</html>

CSS

div{
float : left;
width : 33,3%
height : 100%;
}

img{
max-width : 100%;
max-height : 100%;
}

div#id{
position : fixed;
top : 0;
bottom : 0;
left : 0;
right : 0;
}

我一直在寻找这个,但无法弄清楚...

未知高度的 div 和图像图像可以改变。如何垂直对齐 divs class="one"中的图像?由于这是自适应布局,因此必须缩放图像以防止溢出。

table-cell 或 line-height = 100% 似乎不起作用。

我真的需要 javascript 吗?我已经尝试了一个 jquery 代码,但它超出了我的知识范围,最终改变了我网站上所有图像的边距......这里是:

$(document).ready(function() {                  
$(".one").each(function(){
var wrapH = $(".one").outerHeight();
var imgH = $("img").outerHeight();
var padTop = (wrapH-(imgH))/2;
if (padTop>0){
$("img").css("margin-top", padTop + "px");
}
});
});

最佳答案

您可以使用以下 HTML 轻松完成此操作:

<div class="wrap">
<div class="image-panel">
<img src="http://placekitten.com/300/300">
</div>
<div class="image-panel">
<img src="http://placekitten.com/400/600">
</div>
<div class="image-panel">
<img src="http://placekitten.com/200/600">
</div>
</div>

并应用以下 CSS 样式:

.wrap {
border: 1px dotted blue;
display: table;
width: 100%;
}
.image-panel {
display: table-cell;
vertical-align: middle;
text-align: center;
border: 1px dashed blue;
width: 33.3333%;
padding: 10px;
}
.image-panel img {
width: 100%;
display: block;
}

在这个特定的布局中,我假设每个面板占总宽度的 33.3%,并且图像会自动缩放以适应表格单元格 div 的宽度。

演示 fiddle :http://jsfiddle.net/audetwebdesign/ZBNh7/

关于javascript - 自适应布局上的垂直自适应图像对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16865457/

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