(今まであまり読んでなかったので)改めてHTML 4.01仕様書邦訳をつれづれに読んでいたところ、ソフトハイフンというものがあるのを知る。
ソフトハイフンは、ユーザエージェントに対し、そこが行区切りが発生してもよい場所であることを示すものである。
ソフトハイフンを解釈するブラウザは、次のセマンティクスに従わねばならない。 ソフトハイフンのところで行が区切られる場合、前の行の末尾にハイフン文字が表示されねばならない。ソフトハイフンのところで行が区切られない場合、ユーザエージェントはハイフン文字を表示してはならない。検索やソートなどの操作を行う場合、ソフトハイフンは常に無視する必要がある。
HTMLでは、プレーンハイフンは"-"文字 (- あるいは -) で表される。ソフトハイフンは文字実体参照 ­ (­ あるいは ­) である。
なるほど、NNやIEにあった<WBR>タグがさらに便利なったようなものなのだな。そんな便利なものがあるのならぜひ使いたい頁がうちにひとつあります。果たしてブラウザが対応しているものなのか、ためしに長い単語を書いてみました。-ylのあるごとに­を入れてます。
Acetylseryltyrosylserylisoleucylthreonylserylprolylserylglutaminylphenylalanylvalylphenylalanylleucylserylserylvalyltryptophylalanylaspartylprolylisoleucylglutamylleucylleucyllasparaginylvalylcysteinylthreonylserylserylleucylglycllasparaginylglutaminylphenylalanylglutaminylthreonylglutaminylglutaminylalanylarginylthreonylthreonylglutaminylvalylglutaminylglutaminylphenylalanylserylglutaminylvalyltryptophyllysylrolylphenylalanylprolylglutaminylserylthreonylvalylarginylphenylalanylprolylglycylaspartylvalyltyrosyllsyslvalyltyrosylarginyltyrosylasparaginylalanylvalylleucylaspartylprolylleucylisoleucylthreonylalanylleucylleucylglycylthreonylphenylalanylaspartylthreonylarginylasparaginylarginylisoleucylisoleucylglutamylvalylglutamylasparaginylglutaminylglutaminylserylprolylthreonylthreonylalanylglutamylthreonylleucylaspartylalanylthreonylarginylarginylvalylaspartylaspartylalanylthreonylvalylalanylisoleucylarginylserylalanylasparaginylisoleucylasparaginylleucylvallasparaginylglutamylleucylvalylarginylglycylthreonylglycylleucyltyrosylasparaginylglutaminylasparaginylthreonylphenylalanylglutamylserylmethionylserylglycylleucylvalyltryptophylthreonylserylalanylprolylalanylserine
おお、WindowsのIE5.5(SP2)では確かに右端で改行&ハイフンづけされて表示されている。NN4では­のところが全部?で表示されてしまいましたが。意外なところではLynxでも対応しておりました。
さてかんじんのMozillaではというと、NN4のように?が表示されたりはしないものの、全く改行されずに遙か右方に伸びていってしまいます。なんとかMozillaでも右端で改行&ハイフンづけまで対応してほしいところ。うちの頁のため……イヤイヤ長い英単語の表示のために。
参考: Bug 9101 - Break lines at soft hyphens (­) - Bugzilla
(2001年10月20日)
北村曉 kits@akatsukinishisu.net