我正在制作一个小部件,使得副标题的长度永远不会超过标题。因此,标题将控制小部件的宽度,如果副标题变得比标题宽,则副标题将换行。如果可能,我希望在没有JavaScript的情况下完成。
我已经接近成功了(请参见下面的片段)。我能够人为地缩短副标题,但即使在这种情况下,由于某种原因,其所在的行也扩展到适合容器的整个空间,而不仅仅是其子元素使用的空间!事实上,它占用的空间恰好与没有换行时相同。
我已经接近成功了(请参见下面的片段)。我能够人为地缩短副标题,但即使在这种情况下,由于某种原因,其所在的行也扩展到适合容器的整个空间,而不仅仅是其子元素使用的空间!事实上,它占用的空间恰好与没有换行时相同。
#container {
background: #DDD;
display: flex;
flex-direction: column;
align-items: flex-start;
}
.row {
display: flex;
}
#subtitle {
flex-basis: 0;
}
<div id="container">
<div class="row">
<h1 id="title">Title that is fairly long</h1>
</div>
<div class="row">
<h3 id="subtitle">Subtitle that is a long subtitle and that is even longer and oh it is just so super!</h3>
</div>
</div>
我需要将字幕保持在流动状态(不使用position:absolute
),如果标题过长需要自动换行(这样就不会溢出页面)。
是否有一种方法可以让两行文本,其中一行始终与另一行长度相同?