Kir*_*ril 2 html css icons ellipsis css-float
我有一个项目列表,并在一些项目的末尾我想添加一个图标(或其中几个 - 它是动态的).Items的容器有一个固定的宽度,如果item的文本大小太大 - 我想添加省略号.
所以问题是在文本旁边添加了图标,如果文本很长 - 图标会移出容器.所有项目的模板必须相同.
注意:并非所有项目都有图标,而某些图标可能包含多个图标.
注2: javascript解决方案不适用,想在纯CSS中制作它.
实际:

预期:

任何帮助深表感谢.
body {
font-size: 20px;
}
.container {
width: 150px;
background: #ff0;
list-style: none;
padding: 0px;
margin: 0px;
}
.container li {
border-bottom: 1px solid #000;
}
.item {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.icon {
background: #0f0;
}Run Code Online (Sandbox Code Playgroud)
<ul class="container">
<li>
<div class="item">
<span class="text">Text 1</span>
<span class="icon">12</span>
</div>
</li>
<li>
<div class="item">
<span class="text">Text 2 Text 2</span>
<span class="icon">12</span>
</div>
</li>
<li>
<div class="item">
<span class="text">Text 3 Text 3 Text 3</span>
<span class="icon">12</span>
</div>
</li>
<li>
<div class="item">
<span class="text">Text 4 Text 4 Text 4</span>
<span class="icon"></span>
</div>
</li>
</ul>Run Code Online (Sandbox Code Playgroud)
如果还有人在寻找解决方案,我想出来了:
标记:
<div class="block-wrap">
<div class="block">
<div class="icon"></div>
<div class="text">Text text text text text text text text text text text text text text text text text text text</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
样式:
.block-wrap {
display: inline-block;
max-width: 100%;
}
.block {
width: 100%;
}
.text {
display: block;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.icon {
float: right;
margin-left: 10px;
width: 20px;
height: 14px;
background-color: #333;
}
Run Code Online (Sandbox Code Playgroud)
https://jsfiddle.net/rezed/n1qft37L/