在行尾的一个字母单词(对齐)

时间:2014-04-10 10:07:29

标签: html css

我想知道如果我在文本行的末尾有一个字母单词,我该怎么办,例如:

"Hello my name is John Smith, and I
am a freshman!"

我怎样才能移动&#34;我&#34;到下一行,并证明了整条线路的合理性?因为当我放<br>然后证明崩溃时。

这里是jsfiddle http://jsfiddle.net/P3xYv/

1 个答案:

答案 0 :(得分:4)

如果你在两个单词之间使用NO-BREAK SPACE U + 00A0,而不是普通的空格(如空格或换行符),浏览器会将这些单词保持在一行上。例如:

"Hello my name is John Smith, and I&nbsp;am
a freshman!"

这里我使用了命名字符引用&nbsp;,但如果您知道如何在创作环境中键入它并正确声明字符编码,也可以使用NO-BREAK SPACE本身。在大多数编辑程序中,NO-BREAK SPACE看起来就像一个普通的空间。

这与文本理由无关。在过去,用于处理NO-BREAK SPACE的浏览器在理由上是不可拉伸的。但是现在它在理由上被视为空间,即它增加了间距。

如果你想在单词之间有一个不间断的不可伸缩的空间,你需要一个更复杂的方法。您可以使用U + 2005 FOUR-PER-EM SPACE或其他fixed-width space并将单词包装在line breaking is forbidden与HTML或CSS的元素中。例如,代替I&nbsp;am,您可以编写<nobr>I&#x2005;am</nobr>或更笨拙但符合“标准”<span style="white-space: nowrap">I&#x2005;am</span>。但是,无法保证这将在未来发挥作用;规范中没有要求浏览器以这种方式支持固定宽度字符(但这是一个简单而自然的实现,以及当前的实现)。