微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

html – css自动换行包裹整个单词而不破坏它们?

我需要将长文本放入约300像素的宽度。我正在使用这个CSS:
div {      
      width: 300px;
      color:white;
      word-wrap:break-word;
      }

我的问题是word-wrap:break-word;。它正在破坏单词中间的单词。但我需要的是让文字保持原样,并使文件足够聪明,在适当的时候打破界限,并保持文字本身完好无损。

那可能吗?我尝试了自动换行的所有选项,但没有任何作用。要么段落没有破坏,文字不在屏幕上,或者单词中断和几个字母在一行中,而其他字母在下一行中。

编辑:添加我的代码以形成一个具体的例子。我的整个风格元素:

<style type="text/css">
    p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px OpenSansHebrew-Regular}
    p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px OpenSansHebrew-Regular; min-height: 12.0px}

div {
    width: 300px;
    color:white;
    font-size:10px;
    word-wrap:break-word;
}

pre {white-space:break;}

</style>

然后在body元素中:

<body bgcolor="#1fa0e2">
<p class="p1">
<div>
<bdo dir="rtl">
<pre>
    דירת 3 חדרים ברחוב ארתור רובינשטיין בתל אביב הוצעה באחרונה למכירה ב–2.5 מיליון שקל,ובסופו של דבר נמכרה ב–2.195 מיליון בלבד - פער של 12% בין המחיר המבוקש למחיר המכירה. בירושלים,דירת 4 חדרים ברחוב צביה יצחק הוצעה למכירה ב–1.6 מיליון שקל ונמכרה ב–40% פחות - 950 אלף שקל בלבד.

</pre>
</div>
</bdo>
<span class="Apple-converted-space"></span></p>

</body>
</html>

解决方法

你不需要做任何特别的事情。通常情况下,文字会在单词之间中断。

如果那不会发生,那么

>要么容器太宽
>容器显式设置为不会在空格上中断。例如,如果它是< pre>元素,或者有css white-space:pre;或白色空间:Nowrap;。
>文本包含不间断的空格(& nbsp;)而不是普通的空格。

解决方案:使用

white-space: pre-wrap;

它会使元素表现得像pre元素,除了它在行太长时也会包装。也可以看看:
http://css-tricks.com/almanac/properties/w/whitespace/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐