【发布时间】:2012-09-20 22:08:38
【问题描述】:
我想知道当父 div 和相邻 div 没有足够的空间时,是否有任何方法可以让浮动 div 中的文本获得省略号。例如:
<style>
.parent-div {
width: 100%;
border: 1px;
padding: 4px;
}
.text-div {
float: right;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.icon-div {
float: left;
}
</style>
<div class="parent-div">
<div class="text-div">This is text I'd like to truncate when space doesn't permit</div>
<div class="icon-div">X</div>
</div>
到目前为止,如果我打开浏览器窗口,父 div 将折叠,然后 text-div 中的空白将消失,但当没有更多空间时,省略号永远不会出现。
我唯一能想到的就是在窗口调整大小并在 text-div 上动态设置新的固定宽度时触发一个事件,但这只是感觉不雅,尤其是考虑到填充和其他相邻的工件我必须减去得到适当的宽度。
对这个有什么想法吗?
这是一个 jsFiddle 演示:http://jsfiddle.net/Blender/kXMz7/
【问题讨论】:
-
如果您不关心支持旧版浏览器,您可以使用 flexbox 让这变得非常简单:jsfiddle.net/Blender/kXMz7/1
-
完美的搅拌机!我积极不支持旧浏览器,所以效果很好。 :) 显然它放在桌子里时不起作用,但我可以解决这个问题。谢谢!如果您单独发布答案,我会将其标记为正确的。
标签: css html css-float ellipsis