[英]aligning icon based on text length
這聽起來像是可以用flex解決的問題。
您正在尋找屬性flex-wrap
。 在您的情況下, flex 將使您的項目保持內聯,除非一個變得太長,在這種情況下,它會將其包裝到下一行。
CSS 代碼如下所示:
.item{
display:flex;
justify-content:center;
flex-wrap:wrap;
}
.icon{
flex-shrink:0;
}
HTML 應如下所示:
<div class="item">
<div class="icon"></div>
<div class="text">aaaaaaaaaa</div>
</div>
<div class="item">
<div class="icon"></div>
<div class="text">
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
</div>
</div>
您的item
將是您應該分配 flex 的項目。
將圖標作為偽元素,就像我通過 css 添加的一樣。
div{ margin: 1em 0; border: 1px solid black; padding: 2em; position: relative; } div::before { position: absolute; left: 0; content:"icon"; }
<div>My Content</div> <div>My Log ContenttttttttttttttttttttttttttttttttttttMy Log ContenttttttttttttttttttttttttttttttttttttMy Log ContenttttttttttttttttttttttttttttttttttttMy Log ContenttttttttttttttttttttttttttttttttttttMy Log ContenttttttttttttttttttttttttttttttttttttMy Log ContenttttttttttttttttttttttttttttttttttttMy Log ContenttttttttttttttttttttttttttttttttttttMy Log ContenttttttttttttttttttttttttttttttttttttMy Log Contentttttttttttttttttttttttttttttttttttt</div>
首先,在根元素中添加圖標和文本元素。
<div class="root"> <div class="icon">Icon</div> <div class="text">Text</div> </div>
這個根元素 styles:
.root{ display: flex; flex-wrap: wrap; }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.