像aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa这样的文本超过了div的宽度(比如200px),如何被包装?
我是开放的任何一种解决方案,如CSS, jQuery等。
像aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa这样的文本超过了div的宽度(比如200px),如何被包装?
我是开放的任何一种解决方案,如CSS, jQuery等。
当前回答
在IE、Firefox、chrome、safari和opera中,如果单词中没有空格(比如一个很长的URL),唯一适用的方法是:
div{
width: 200px;
word-break: break-all;
}
我发现这个是防弹的。
其他回答
你可以像这样使用软连字符:
啊
这将显示为
aaaaaaaaaaaaaaa-
aaaaaaaaaaaaaaa
如果装盒不够大,或者
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
如果是的话。
使用word-wrap:break-word属性以及所需的宽度。主要是, 宽度以像素为单位,而不是百分比。
width: 200px;
word-wrap: break-word;
div {
/* Set a width for element */
word-wrap: break-word
}
“换行”解决方案只适用于IE和支持CSS3的浏览器。
最好的跨浏览器解决方案是使用您的服务器端语言(php或其他)来定位长字符串,并定期在其中放置html实体​ 这个实体很好地分割了长单词,并且适用于所有浏览器。
e.g.
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa​aaaaaaaaaaaaaaaaaaaaaaaaaaaaa
一个服务器端解决方案,对我来说是:$message = wordwrap($message, 50, "<br>", true);其中$message是一个字符串变量,包含要拆分的单词/字符。50是任何给定段的最大长度,“<br>”是你想要每(50)个字符插入的文本。
试试这个:
div {
width: 200px;
word-wrap: break-word;
}