gpt4 book ai didi

css - 使用 Bootstrap 的网格,有没有办法在不创建新行的情况下垂直对齐?

转载 作者:行者123 更新时间:2023-12-02 22:36:44 26 4
gpt4 key购买 nike

假设我有以下 HTML(好吧,haml,但是......):

.container
.row
.span4
%h1
%p
%img
.span4
%h1
%p
%img
.span4
%h1
%p
%img

因此,每一列都有一个标题、一些文本和一张图片。有没有办法让图像像这样垂直对齐:

.container
.row
.span4
%h1
%p
.span4
%h1
%p
.span4
%h1
%p
.row
.span4
%img
.span4
%img
.span4
%img

但没有创建新行?原因是,我希望将图像与标题和文本分组,以便在移动/平板电脑布局上,图像的布局与它们匹配的内容,而在第二种情况下,你会得到三个几组文字,然后是三张图片。

最佳答案

我可以想到两种方法:

在任何情况下,img-outer 在某些情况下可能不是必需的。

<div class="container">
<div class="row">
<div class="span4">
<h1></h1>
<p></p>
<div class="img-outer"><img src="" /></div>
</div>
<!-- ... -->
</div>
</div>

高度控制

如果您为上面的文本元素设置固定高度 h1p,那么您的图像将对齐。

您还可以.span 设置固定高度并使用绝对定位。这个如下所示:

.container .row [class*="span"] {
height: 100px;
padding-bottom: 150px;
position: relative;
}
.container .row [class*="span"] .img-outer{
height: 150px;
line-height: 150px;
vertical-align: middle;
position: absolute;
bottom: 0;

/* Take the whole width */
left: 0;
right: 0;
}

Demo (jsfiddle)

其他定位

似乎可行,我没有足够的绝对定位知识来保证结果是跨浏览器的。

.container .row {
padding-bottom: 150px;
position: relative;
}
.container .row [class*="span"] .img-outer{
height: 150px;
line-height: 150px;
vertical-align: middle;
position: absolute;
bottom: 0;

/* Take the whole width */
width: 300px; /* .span4 width */
}

Demo (jsfiddle)

关于css - 使用 Bootstrap 的网格,有没有办法在不创建新行的情况下垂直对齐?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11363833/

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