gpt4 book ai didi

html - 在 flexbox 布局中设置图像基线

转载 作者:太空狗 更新时间:2023-10-29 16:05:47 28 4
gpt4 key购买 nike

我正在尝试使用 flexbox 创建多列布局并对齐所有列中的基线。我使用 align-items: baseline 属性来执行此操作。现在,当每一列中的第一个元素是文本时,这非常有用,例如:

CSS

.container {
display: flex;
align-items: baseline;
}

.col-2 {
width: 48%;
}

HTML

<div class='container'> 
<div class='col-2'>
<h2>Nullam eget metus suscipit, auctor diam quis, sagittis eros. Phasellus quis iaculis nisi.</h2>
</div>
<div class='col-2'>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse lobortis nulla in elit hendrerit congue. Nullam eleifend, neque vitae finibus accumsan, augue dui lacinia leo, eget sagittis ipsum dui id leo.</p>
</div>
</div>

我遇到的问题是当列中的第一个元素是图像时,如下所示:

<div class='container'> 
<div class='col-2'>
<h2>Nullam eget metus suscipit, auctor diam quis, sagittis eros. Phasellus quis iaculis nisi.</h2>
</div>
<div class='col-2'>
<img src='https://c1.staticflickr.com/1/644/23373656961_9d6426d815_h.jpg'>
</div>
</div>

第一列中的标题与第二列中图像的底部对齐。我想做的是更改图像基线,以便标题将移向列的顶部。我知道您可以通过将 align-items 属性设置为 flex-start 来解决这个问题,但我更愿意保留 align-items 属性不变。这样,无论有多少列,文本基线都将始终对齐。

我的目标 - 弄清楚如何在不更改 .container 类的情况下调整图像基线。这可能吗?

这里有一个代码笔,你可以使用 http://codepen.io/jonathink/pen/wMwgwZ

最佳答案

What I would like to do is change the image baseline so that the heading will move towards the top of the column.

My goal - figure out how to adjust the image baseline without changing the .container class. Is this possible?

您可以为图像创建一个类,然后使用 align-self属性仅调整图像的对齐方式。

来自您的 codepen :

修改后的 HTML(在两处添加了 .image 类)

<div class='container'>
<div class='col-2'>
<h2>Nullam eget metus suscipit...</h2>
</div>
<div class='col-2'>
<p>Lorem ipsum dolor sit amet, cons...</p>
</div>
</div>
<div class='container'>
<div class='col-2'>
<h2>Nullam eget metus suscipit...</h2>
</div>
<div class='col-2 image'><!-- ADJUSTMENT HERE -->
<img src='https://c1.staticflickr.com/1/644/23373656961_9d6426d815_h.jpg'>
</div>
</div>
<div class='container'>
<div class='col-3'>
<h2>Nullam eget metus suscipit...</h2>
</div>
<div class='col-3'>
<p>Lorem ipsum dolor sit amet...</p>
</div>
<div class='col-3 image'><!-- ADJUSTMENT HERE -->
<img src='https://c1.staticflickr.com/1/644/23373656961_9d6426d815_h.jpg'>
</div>
</div>

修改后的 CSS(添加了一条规则)

.image { align-self: flex-end; }

Revised DEMO

关于html - 在 flexbox 布局中设置图像基线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34035855/

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