我需要将一段长文本适应大约300像素的宽度。我正在使用以下css
:
div {
width: 300px;
color:white;
word-wrap:break-word;
}
我的问题在于word-wrap:break-word;
。它会在单词中间断开单词。但我需要的是让单词保持原样,并让文档在适当的时候智能地换行,同时保持单词本身不变。
这可行吗?我尝试了每个word-wrap
选项,但都不起作用。要么段落没有断开,文本停留在屏幕外,要么单词断开,两个字母在一行,而其他字母在下一行。
编辑:添加我的代码以形成一个具体的示例。我的整个style
元素:
<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>
元素,但除此之外,我认为你应该考虑使用white-space
属性。 - Marc Audetpre
中,这是至关重要的。请编辑问题本身,提供足够的信息以便能够重新复现问题。 - Jukka K. Korpelapre
元素表示预格式化文本。当您不想要预格式化文本(即,间距和换行符与HTML源代码完全相同)时,为什么要使用它?普通的p
元素足以显示一个段落的文本。然后文本将在空格处换行。 - Jukka K. Korpelawhite-space: pre-wrap
的div
是最佳选择,但这取决于确切的要求。如果您现在有空行表示逻辑段落边界,正如我所怀疑的那样,将它们转换为<p>
标签应该相当简单。这可能是您需要的全部内容(除了包含元素的dir=rtl
)。 - Jukka K. Korpela