HTML の文字コード指定 ~ ちょっとした違いに注意
「アメリカで働く・・・」 と、どうしても意識しなければならないのは、プログラムの日本語対応についてです。
アメリカの人たちは、当然みんな英語 OS を使ってます。うっかりすると、すぐに文字化けしてしまいます。 たとえ OS に日本語が入っていて本来 「化け」 なくてもいい場合でも、単に表示できないこともしばしばです。
簡単な例はこんなです。
HTML を書く場合、ちゃんと Content-Type の META タグを書いてないと、ブラウザは文字コードの判定に失敗して 文字化けして表示されるか、真っ白な画面が表示されるだけになります。
Content-Type を書くときは、head の一番最初に書いておかないとダメです。
つまり、
<html> <head> <title>ページタイトル</title> <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP"> ... (省略)...
と、書くのではなく、次のように書きます。
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP"> <title>ページタイトル</title> ... (省略)...
Content-Type は 一番最初に書かないとダメです。
最初に title タグが書いてあると、ブラウザは先にそれを読みます。 その時に、ブラウザの文字コード自動判定ロジックが走ってしまい (でそれが判定に失敗するのが常)、 結局 meta タグは役に立ちません。
ですから、ブラウザの文字コード判定ロジックが走る前に、ブラウザに 「このページは EUC-JP で書いてますよ!」 とか 「UTF-8 ですよ!」と教えてあげないといけないのです。
(※) こういうのは本来、HTML ではなく HTTP のヘッダーでブラウザに教えてあげるのが良いです。ただし、たとえ HTTP ヘッダで教えてあげたとしても、head タグ内に Content-Type は書いておいたほうが良いと思います。とにかく化けたら読めませんので、ブラウザにしっかり文字コードを教えてあげた方がよいですからね。
Web サイトを作る方はお気をつけください。