2010-04-29 73 views
10

给定块容器CSS线缠绕

<div> 
this is a very long string which contains a bunch of characters that I want to break at container edges. 
</div> 

是否有任何的CSS属性我可以设置迫使它打破当它到达容器宽度,无论字符串的内容,例如像一个破:

this is a ve 
ry long stri 
ng which ... 

几乎是我想要的。现在,它似乎总是喜欢以空白字符或其他特殊字符(例如/)分隔。

+0

你也许可以在http://doctype.com/questions上问同样的问题:) – 2010-04-29 15:00:49

+7

StackOverflow对于这类问题仍然足够。 – 2010-04-29 15:02:34

+0

@Magnus:没有冒犯,但我还没有发现文档类型是解决技术问题的非常好的答案来源。 – Robusto 2010-04-29 15:13:43

回答

9

有一个名为word-break的CSS3属性,将来可能会对您有所帮助。

的更多信息,请访问:http://www.css3.com/css-word-break/

break-all值看起来做你要求的事:

有用的内容包含了大部分的亚洲字符集的内容,此价值表现得像'正常'。非亚洲字符集内容可以跨线任意断开。

至于更受支持的CSS版本,我不相信有一种方法可以做到这一点。

+0

谢谢你,CSS3属性“字 - 中断:打破所有;”在Webkit中工作,但遗憾的是它在Firefox中不起作用(或者隐藏在其他地方)。一个浏览器完成,几个去:)。 – Mic 2010-04-29 21:27:52

+0

接受,因为你解决了几个浏览器。用火狐浏览器的CSS来解决这个问题似乎是不可能的:( – Mic 2010-04-30 18:59:03

+2

现在在大多数浏览器中都可以使用。请参阅http://caniuse.com/#search=word-break – Josh 2013-01-07 19:40:24

4

尝试此

<style type="text/css"> 
div { 
white-space: -moz-pre-wrap; /* Mozilla, supported since 1999 */ 
white-space: -pre-wrap; /* Opera 4 - 6 */ 
white-space: -o-pre-wrap; /* Opera 7 */ 
white-space: pre-wrap; /* CSS3 - Text module (Candidate Recommendation) http://www.w3.org/TR/css3-text/#white-space */ 
word-wrap: break-word; /* IE 5.5+ */ 
} 
</style> 

<div style="width:200px"> 
adsjflk;asjfl;kasdjfl;kasdjfl;kasdjf;lkasdjf;lkasdjf;lkasjdf;lkajsd;lkadfjs;l 
</div> 
+0

几乎可悲的是它仍然倾向于打破连字符和空格,如果可以的话(Webkit)。在Firefox中,除了/ :(。 – Mic 2010-04-29 21:17:11

1

替代方式通过封入在父DIV div和设置父div的宽度达到相同。虽然它可能不是理想的解决方案。

<div style="width:50px"> 
     <div>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum</div> 
     </div> 
+0

)之外,它还会打破前面提到的字符。很遗憾,大多数浏览器仍然倾向于打破空白,如果下列单词不适合当前行:/。 – Mic 2010-04-29 21:30:51