HTML: Soft hyphen (­) without dash?

2020-03-12 03:08发布

I have a little layout problem: on a clients website, we show contact information of people in a little box. The width of that box is constrained. As it happens, there are people with very long names (this is in Germany, after all...), and the email address is a concatenation of the given name and family name. The result: with certain names, the email address overflows the constraints given by the about box.

Inserting a ­ before the @results in the correct line break, but looks like this:

john.doe-
@example.com

Is it possible to suppress that dash? I don't want to use <br />, because for 90% of the names, the available width is more than enough.

4条回答
We Are One
2楼-- · 2020-03-12 03:55

If you're willing to drop support for Internet Explorer 11, then you can use the <wbr> element. This is probably superior to using the zero-width-space, because it won't be copied into the clipboard.

See it in action here

MDN documentation

查看更多
狗以群分
3楼-- · 2020-03-12 03:59

You may want to have a look on css property word-wrap.

And this page seems to be doing what you want.

查看更多
Evening l夕情丶
4楼-- · 2020-03-12 04:00

Use a zero-width space: &#8203;

john.doe&#8203;@example.com

In action here: http://jsfiddle.net/uTXwx/1/

查看更多
老娘就宠你
5楼-- · 2020-03-12 04:04

Though I'm not sure how this does cross-browser (probably pretty well), you could always use the thin space character (&thinsp;) or the zero-width space (&#8203;).++

john.doe&thinsp;@example.com

++ I would not suggest using the zero-width space, as apparently some browsers will not render it correctly (source).

查看更多
登录 后发表回答