Yahoo!の掲示板で、繫 (つなぐ)という文字を入力すると文字化けをするという投稿がありました。「繫」はJIS第1水準/第2水準にある「繋」の異字体でJIS補助漢字に有る文字です。
(注)JIS第1水準/第2水準 1978年にコンピューター用の漢字(文字)コードのJIS規格、JIS C6226というが制定されました。これに採用された文字は、使用頻度に従ってJIS第1水準と第2水準に分けられています。その後この規格はJIS X0208という規格になりました。
JIS補助漢字(JIS X0212)は、JIS第1水準/第2水準(JIS X0208)の文字を補完するために1990年に定められた文字コードの規格です。
さて、実際にこの字を含む文章をYahoo!掲示板に投稿しても、文字化けしません。
写真はXP SP2 Firefox1.5上での表示のスクリーンショット、右側が問題の「繋」ぐです。
(なお、下の1-23-50というのはJIS X0213(最新の規格)で使用されている面区点コードです。U+7E4BはUnicodeの文字コードです。他も同じです。)
(MozillaFirefoxで投稿したものを、MozillaFirefoxで閲覧した例)
待てよ!もしかして、Firefoxで見ているので文字化けしないのかな?と思い、インターネットエクスプローラー(IE)で確認してみると案の定 右側が文字化けしています。
(MozillaFirefoxで投稿したものを、IEで閲覧した例)
本当は、こう
見えないといけません。
うーん、何でだろう?Yahoo!の掲示板が文字コードにEUC-JPを使用しているせいでしょうか?
(注)日本語のWEBサイトで使用されている日本語の文字コードは主に、Shift_JIS、EUC-JP、ISO-2022-JPがあります。また日本語の文字コードではありませんが、Unicodeのエンコードの1形式であるUTF-8も使用されています。
Unicodeは日本の漢字だけでなく、中国や台湾、韓国の漢字、ハングル、タイ文字、アラビア文字などを一緒に表示しようという文字コード体系です。

そのページがどの文字コードを使用しているかは、IEの場合は「表示」-「エンコード」で確認できます。なお、IEはISO-2022-JPを「日本語(JIS)]と表示しますが、これは間違 った用法です。
EUC-JPは補助漢字に対応しているはずだけどなあ、と調べてみたらウィキペディアに次の記事がありました、
つまり、EUC-JPの実装にはいろいろ種類があり、IEのそれは補助漢字には未対応だったのです。「繫」はYahoo!のサイトでは 8F D4 DAと1文字が3バイトでエンコーディングされます。第1水準/第2水準の文字はYahoo!のサイトでは1文字2バイトでエンコードされます。IEは3バイトでエンコードされた補助漢字の文字を正しく判定できないので しょう。道理で文字化けするはずです。
エンコード違いのサンプルファイルを作ってみました。下のURLをクリックすればジャンプします。表示の違いをご確認ください。
./eucjpsample.html (EUC-JPでエンコードされたページ) IEで見ると該当の文字は文字化けします。
./sjissample.html (Shift_JISでエンコードされたページ) 該当の文字は直接表示できません。数値文字参照形式を使用すれば表示できます
。
./utf8sample.html (UTF-8でエンコードされたページ) 該当の文字をIEで見ても文字化けしません。
次期版のWindowsであるWindowsVistaのβ2版(テスト版)上のIE7でも同じ文字化けをしました。マイクロソフトはこの仕様を変える気がないようです。
なお、サンプルページを見ていただければ分かりますが、EUC-JPサイトでも数値文字参照を使用すれば文字化けは起こりません。
(注)数値文字参照はその文字コード体系で表示できない文字をWEBサイト上で表示する方法です。「繫」 このように&から始まる文字列で、1文字を代替します。ただ残念なことにYahoo!掲示板ではこの方法での入力は受け付けてくれません。
(2006/6/17 記)(2006/7/31 (注)追記+変更)
Yahoo!掲示板への書き込み、シオシティーズのWEBページ作成ツール(アドバンストHTMLエディタ)の利用時に、 インターネットエクスプローラー(IE)を使用し、その文章中に補助漢字(NEC特殊文字、IBM拡張文字/NEC選定IBM拡張文字にあるものを除く)があると、 アップロードした文章全体が文字化けします。
MozillaFirefoxを使用してアップロードした例 (この場合でもIEで閲覧すれば該当文字とその後1文字程度が文字化けしてしまいます。)
IE6.0を使用してアップロードした例 (MozillaFirefoxで閲覧してもページ全体が文字化けします。アップロード時にすでに文字化けしている物と思います。)
すなわち、IEで補助漢字を含んでいる文字をYahoo!の掲示板に投稿すると、そのページ全体が文字化けしてしまいます。これは投稿時にそのようにIEが書き込んでしまうのです。従って このページを他のWEBブラウザで閲覧してもページ全体が文字化けしてしまいます。
WEBブラウザにMozilleFirefoxを使用して投稿すれば、このようなことは起こりません。ただしそのページを後でIEで閲覧すると、補助漢字とその次の文字が文字化けして表示されます。
(注)Shift_JISコードは原則としてJIS第1水準/第2水準にある文字しか使用できません。ただしWindowsは昔のPCとの互換性のためNEC特殊文字、およびIBM拡張文字/NEC選定IBM拡張文字という規格外の文字を含みます。
これらの規格外の文字の中にはその後JIS補助漢字に採用されたものもあります。その文字は、Yahoo!掲示板にIEで投稿してIEで閲覧しても文字化けはしません。
(この項 2006/7/29 追加)(2006/7/31 (注)追記+変更)
参考資料:JIS補助漢字とWindowsの特殊文字
なお、メモ帳に入力した文章を、文字コード「ANSI」で保存しようとして「Unicode形式の文字を含んでいます」と警告されれば、そこに含まれる文字を含んだ文章をYahoo!掲示板にIEを使って投稿すると文字化けします。

(なお、この場合文字コードに「ANSI」という用語を使うのは誤用です。)
(この項 2006/7/30 追加))(2006/7/31 追記)
確認のためVistaβ2上のIE7で上のページを見ているときにおかしなことに気がつきました。UTF-8でエンコーディングされたページとShift_JISでエンコーディングされたページで「繫」の表示フォントが違うのです。上はUTF-8、下がShift_JISです。


ソースを見ていただければ分かりますが、ソース上でFONT指定はしていません。IE7のFONTの設定も特に特殊なことはしていません。
またひとつ不思議なことがありました。悩んでしまいます。

(2006/6/17 記)