A
character is a space which doesn't allow for line breaking.
<p>lorem ipsum here are some words and so on</p>
| lorem ipsum |
| here are some words and so |
| on |
What's the opposite of that? That is, a character which is NOT rendered as a space, but CAN be used for line breaking.
<p>foo supercalifragilisticexpialidocious bar</p>
<!-- put char here ^ and here ^ -->
|foo supercalifragi |
|listicexpiali |
|docious bar |
or with wider size:
|foo supercalifragilisticexpiali |
|docious bar |
I'm aware of the soft-hyphen character, but for 开发者_Python百科my purposes, I specifically do not want a hyphen added at the break.
You want the unicode character ZERO-WIDTH SPACE (\u200B).
You can get it in HTML with ​
or ​
.
Explicit breaks and non-breaks:
LB7 : Do not break before spaces or zero width space.
LB8 : Break before any character following a zero-width space, even if one or more spaces intervene.
http://unicode.org/reports/tr14/
There also is the little-known wbr tag, which lets the browser to decide whether to break the line or not.
There's a nice page over at quirksmode.org that answers this question quite nicely IMHO. http://www.quirksmode.org/oddsandends/wbr.html
In short: use <wbr /> or ​ (or ­ but you mentioned you don't want the dash).
use <wbr>.
You can use CSS3 property called word-wrap
p.test {word-wrap:break-word;}
Hope it helps!
theres a lot of discussion about this but it has become more or less standard to use ­
精彩评论