たとえば下記のような HTML を
<html><body> <p style="font-size: 96px">http://example.com/foo/bar/baz/hogehoge/fugafuga/funifuni/<p> </body></html>
Firefox(Gecko 系)や Safari で見ると,改行が行われずにスクロールバーがびろーんとでてくるのですが*1,
http://​example.com/​foo/​bar/​baz/...
みたく ​ を挿入してやると,必要に応じてその部分で改行されます。
これなにかっていうと,Unicode の ZERO WIDTH SPACE(U+200B)であり,見た目の幅はないけどれっきとしたスペーサなので適宜改行してくれるわけです。
でもこれ,HTML4の仕様みたけど,名前によるエンティティ名がないんですよね。
あんまり使っちゃいけないんですかね?
「day​flower」と書くと見た目としては「dayflower」のようになりますが文書の意味合いとして「day flower」となりますし,ってことは例えば検索エンジンがクロールしたときにこれを一続きの「dayflower」として認識してくれないということになるでしょう。
実際,dayflowerをコピーして gedit 等に貼り付けると,間に 0xe2 0x80 0x8b(UTF-8 表記)が入るんですよね。
<wbr> タグよりマシと見るべきかそれ以下と見るべきか。難しいですね。