[英]How to force html elements into one line?
我有一些元素,例如:
<div>
<div style="overflow: hidden; white-space: nowrap; text-overflow:ellipsis">
Texttttttttttttttttttttttttttttttttttttttttttttttttttttttttt
<div style="float: right">Float text</div>
</div>
这将显示如下内容:
Texttttttttttttttttttttttttttttttttttttttttttt...
Float text
但是我希望它是这样的:
Texttttttttttttttttttttttttttttttttttt...Float text
我尝试使用绝对位置方法,但是这样,省略号将不会显示。
有什么办法可以做到这一点吗?
注意:
不知道出了什么问题,但很多人建议使用内联块或跨度方式,两者都不起作用。 将浮动文本放在 'Textttt' 之前确实有效。
更新
对于以下任一解决方案在左侧文本上有省略号,它需要一个宽度集,无论是显式的还是空间不足并有overflow: hidden
/ text-overflow: ellipsis
。
你喜欢这样,外面的 div ( wrap
) 有white-space: nowrap
和内部显示像内联块
.wrap { white-space: nowrap; max-width: 400px; } .wrap > * { display: inline-block; vertical-align: top; } .wrap > div:first-child { overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
<div class="wrap"> <div> Texttttttttttttttttttttttttttttttttttttttttttttttttttttttttt text text text text text text text text text text text text </div> <div>Float text</div> </div>
或带display: table
.wrap { display: table; table-layout: fixed; width: 500px; } .wrap > * { display: table-cell; } .wrap > div:first-child div { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
<div class="wrap"> <div> <div>Texttttttttttttttttttttttttttttttttttttttttttttttttttttttttt</div> </div> <div>Float text</div> </div>
将右侧浮动块放在您希望它与之一致的文本之前。
<div style="overflow: hidden; white-space: nowrap; text-overflow:ellipsis">
<div style="float: right">Float text</div>
Texttttttttttttttttttttttttttttttttttttttttttttttttttttttttt
</div>
使用display:inline-block使 div 内联
<div>
<div style="overflow: hidden; white-space: nowrap; text-overflow:ellipsis">
Texttttttttttttttttttttttttttttttttttttttttttttttttttttttttt
<div style="display:inline-block">Float text</div>
</div>
改用跨度
<span>Texttttttttttttttttttttttttttttttttttttttttttttttttttttttttt</span>
<span>Float text</span>
或者设置display: inline-block;
在 div 元素上
还要确保父元素没有固定宽度。 但这不会成为问题,因为您使用了white-space: nowrap;
将文本放在一个跨度中。 无需添加到 CSS。
<span>Text Here</span>
尝试将所有内容包装在 span 类中
<span> <div style="overflow: hidden; white-space: nowrap; text-overflow:ellipsis"> </div> </span> <span> <div style="float: right;">Float text</div> </div> </span>
给这两个元素一个 display:inline-block 属性。 你有几个引号和一个结束 div 标签丢失。 所有这些都已修复,可以在此JSFiddle 中看到。
更新后的 html 如下:
<div>
<div style="overflow: hidden; white-space: nowrap; text-overflow:ellipsis;display:inline-block">
Texttttttttttttttttttttttttttttttttttttttttttttttttttttttttt
</div>
<div style="float: right;display:inline-block">
Float text
</div>
</div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.