这是开始我发疯,任何帮助表示赞赏!CSS:如何具有可变列大小与文本溢出省略号
我希望每个<li>
不是“固定”的最大宽度为150px,最小宽度为10px,但是当浏览器调整大小时,它们应该缩小以固定(并且宽度相等)。我还希望每个非“固定”<li>
中的文本都具有文本溢出:省略号。
我似乎无法得到这个工作,所以到目前为止,我有:
HTML:
<ul>
<li class="fixed">Fixed Size</li>
<li>
<div>
<span>this text is very very long and it goes on and on and on and on but does not wrap</span>
</div>
</li>
<li>
<div>
<span>short</span>
</div>
</li>
<li>
<div>
<span>one more tab</span>
</div>
</li>
<li>
<div>
<span>another tab</span>
</div>
</li>
</ul>
CSS:
ul {
margin: 0;
padding: 0;
list-style: none;
display: table;
border-spacing: 6px 0px;
}
li {
display: table-cell;
background-color: red;
width: 150px;
}
li > div {
overflow: hidden;
text-overflow: ellipsis;
}
li > div > span {
display: block;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
li.fixed {
width: 100px;
min-width: 100px;
text-align: center;
}
更新:这显示了我在列后的内容秒,但正如你所看到的文本没有隐藏的省略号:
UPDATE:这是越来越近了,但仍然没有省略号:-(
更新:已解决解决方案发布如下。
可以HTML结构被改变? – 2013-05-05 12:40:31
@VimalStan是的,HTML可以改变。 – magritte 2013-05-05 12:42:48
你需要什么椭圆? html会将文本分解成适合你的li(一旦你删除了空白:nowrap;)。您是否希望隐藏部分文本来破解文本以进行多行操作? – bjelli 2013-05-05 12:47:02