为防止包裹文本的一部分,可以使用<span style="white-space: nowrap;">
中的该部分。
给定一段合理的文本(text-align: justify
),如何取消部分文本的理由?我希望保持整个文本的合理性,但不允许增加两个特定单词之间的距离。
而不是像第二行那样均匀间隔:
Lorem ipsum dolor sit amet, consectetur |
adipiscing elit. Phasellus et |
ullamcorperenim sed velit fermentum. |
我希望将“adipiscing elit”这两个词保持在一起,如下所示:
Lorem ipsum dolor sit amet, consectetur |
adipiscing elit. Phasellus et |
ullamcorperenim sed velit fermentum. |
这可能吗?
答案 0 :(得分:6)
选项:
adipiscing elit
。无法保证浏览器将其视为不可伸缩的空间,但这是他们实际所做的事情,这是一件很自然的事情。毕竟,它是fixed-width spaces之一。缺点:如果文本的主要字体不是Arial Unicode MS或其他一些特别“丰富”的字体,则通常在IE 6上失败(显示一个小框而不是空格)。span
)并为其设置text-justify: none
和display: inline-block
。缺点:旧的浏览器不起作用,并强制将两个单词放在一起(由于后一个声明 - 没有它,这种方法在当前浏览器上不起作用。)答案 1 :(得分:0)
我不建议使用html样式属性。如果您使用类,则更容易进行更改:
包裹两个词“adipiscing elit”。在像这样的类的范围内:
<span class="unjustify">adipiscing elit.</span>
然后在你的CSS中:
.unjustify {
word-spacing: 2px; //experiment with differen't values here.
}
经过一些测试后,上述解决方案似乎不起作用。
...所以我提出了以下(工作)解决方案:
用这样的类在一个范围内包裹两个单词之间的空格:
adipiscing<span class="unjustify"> </span>elit.
然后在你的CSS中:
.unjustify {
display: inline-block;
width: 6px;
}
答案 2 :(得分:0)
您应该研究的一个解决方案是使用几个固定宽度的Unicode空格字符之一。参见:
http://www.cs.tut.fi/~jkorpela/chars/spaces.html
或
http://en.wikipedia.org/wiki/Space_(punctuation)
示例:
adipiscing elit.
然而,与Web_Designer的解决方案一样,如果换行符,则会在行尾留下一个空格。