我想创建一个具有固定宽度的 span,当我在 span 中键入任何内容(如 <span>lgasdfjksdajgdsglkgsadfasdfadfasdfadsfasdfasddkgjk</span>)时,它是一个非间隔的长字符串,单词会中断或换行到下一行。
<span>lgasdfjksdajgdsglkgsadfasdfadfasdfadsfasdfasddkgjk</span>
有什么想法吗?
像这样
演示
li span{ display:block; width:50px; word-break:break-all; }
您可以使用 CSS 属性 word-wrap:break-word;,如果单词对于您的跨度宽度来说太长,它将中断单词。
word-wrap:break-word;
span { display:block; width:150px; word-wrap:break-word; }
<span>VeryLongLongLongLongLongLongLongLongLongLongLongLongExample</span>
By default a span is an inline element... so that's not the default behavior.
span
inline
通过将 display: block;添加到 CSS 中,可以使 span按照这种方式工作。
display: block;
span { display: block; width: 100px; }
试试这个
span { display: block; width: 150px; }
试试下面的 css 加上 white-space:
white-space
span { display: block; word-wrap:break-word; width: 50px; white-space: normal; }
只是为了扩大问题的实际范围,并作为给定答案的附录: 有时人们会发现有必要多指定一些选择器。
通过将整个跨度定义为 内联块显示,您可能很难显示图像。
因此,我倾向于这样定义跨度:
span { display:block; width:150px; word-wrap:break-word; } p span, a span, h1 span, h2 span, h3 span, h4 span, h5 span { display:inline-block; } img{ display:block; }
在我的例子中,display: block 打破了设计的初衷。
The max-width property just saved me.
max-width
在造型方面,你也可以使用 text-overflow: ellipsis。
text-overflow: ellipsis
我的原则是
max-width: 255px overflow:hidden