我在一个定义为 width 的 div中有一段很长的文本:
width
div
HTML:
<div>Stack Overflow is the BEST!!!</div>
CSS:
div { border: 1px solid black; width: 70px; }
如何强制字符串保持在一行中(即,在“ Overflow”的中间被切断) ?
我尝试使用 overflow: hidden,但没有帮助。
overflow: hidden
在CSS部分中,使用white-space: nowrap;。
white-space: nowrap;
尝试设置一个高度,这样块就不能增长到容纳你的文本,并保留overflow: hidden参数。
下面是一个例子,如果你需要显示两行高,你可能会喜欢:
div { border: 1px solid black; width: 70px; height: 2.2em; overflow: hidden; }
把这个添加到你的div:
http://jsfiddle.net/NXchy/1/
试试这个:
div { border: 1px solid black; width: 70px; overflow: hidden; white-space: nowrap; }
使用white-space:nowrap和overflow:hidden
white-space:nowrap
overflow:hidden
http://jsfiddle.net/NXchy/8/
试试吧。它使用pre而不是nowrap,因为我假设你想让它类似于<pre>运行,但两者都可以工作:
pre
nowrap
<pre>
div { border: 1px solid black; max-width: 70px; white-space: pre; }
http://jsfiddle.net/NXchy/11/
我做了一把小提琴:
http://jsfiddle.net/audetwebdesign/kh4aR/
RobAgar指出white-space:nowrap。
这里有几件事:如果你不想看到额外的字符伸出到你的布局中,你需要overflow: hidden。
同样,如前所述,你可以使用white-space: pre(见EnderMB),记住pre不会折叠空白,而white-space: nowrap会。
white-space: pre
white-space: nowrap
之前的答案对我都没用。
在某些情况下,不管你做什么,并且取决于系统(Oracle Designer: Oracle 11g - PL/SQL), div总是会转到下一行,在这种情况下,你应该使用跨度标记。
这对我产生了奇效。
<span float: left; white-space: nowrap; overflow: hidden; onmouseover="rollOverImageSectionFiveThreeOne(this)"> <input type="radio" id="radio4" name="p_verify_type" value="SomeValue" /> </span> Just Your Text || <span id="headerFiveThreeOneHelpText" float: left; white-space: nowrap; overflow: hidden;></span>
div { width: 100px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
div { display: flex; flex-direction: row; }
是对我有效的解决方法。在div-lists的某些情况下,这是必需的。
一些可供选择的方向值是row-reverse, column, column-reverse, unset, initial和inherit。做你期望他们做的事。
row-reverse
column
column-reverse
unset
initial
inherit
在span中你需要添加: { display: block; } < / p >
{ display: block; }
span { width: 70px; border: 1px solid black; display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
<span>Stack Overflow is the BEST!!!</sapn>