[1] HTML4 <IW:HTML4:"struct/text.html#hyphenation">
によりますと、 HTML には、普通の (plain) ハイフンと軟い (soft)
ハイフンの二種類があります。
普通のハイフンは -
(U+002D
;
HYPHEN-MINUS
) でありまして、
軟かいハイフンは ­
(U+00AD
;
SOFT HYPHEN
; SHY) なのであります。
(HTML の文書文字集合をよくみれば、 他にも一杯あることが分かるのですけどねぇ。)
[3] なにげに、 >>2 によれば、たとえ HTML 4 適合 UA であっても軟ハイフンを処理できなければならないわけではないことがわかります。 日本で作られた UA は軟ハイフンなんて全然知らなかったりしますからね。
[4] Bug 9101 - Break lines at soft hyphens (­) and display hyphens if line broken <https://bugzilla.mozilla.org/show_bug.cgi?id=9101>
Opera や WinIE は SOFT HYPHEN
を改行位置の参考にしますが、 Gecko
はそうしません。 (>>2 の規定には従っています。)
[6]
­
や SOFT HYPHEN
は、 HTML 利用者エージェントであるものとそうでないものも含めて、
HYPHEN-MINUS
と同じように扱う
(稀な状況でのみ正しい動作)HYPHEN-MINUS
として扱う (正しい動作)と少なくても3種類の扱われ方が実在しています。 そのため、異なる利用者エージェントの利用者には異なって表示されることがあり、 混乱の元になっています。
その中でも特に問題が多いのは存在しないものと同じように扱う場合や
HYPHEN-MINUS
と同じように扱う場合です。
正しい動作であるにも関わらず問題があるというのも困ったものです。
どちらの場合にせよ、利用者の直感と反する動作になります。
また、表示によって利用者を欺くなりすましにも使われています。