- 締切済み
文字化けを解決したい
サイトを持つ管理人です。タグなどについてはかなり初心者です。 iPhoneなどの海外OSから閲覧すると文字化けしてしまうという報告を受けて、タグを色々いじっています。 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">を追加してみたのですが、これ単品だと私のPCから閲覧したときに文字化けしてしまいました。 そのため<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">と<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">を並べてみたのですが、これで海外OSからも文字化けを起こさなくなったのでしょうか? こんな感じのタグです↓ <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <META NAME="GOOGLEBOT" CONTENT="NOINDEX, NOFOLLOW,NOARCHIVE"> <META NAME="ROBOTS" CONTENT="NOARCHIVE,NOINDEX,NOFOLLOW"> <meta name="viewport" content="width=380, maximum-scale=1.6" /> <title>練習</title> </head> 全てのスマホからもサイトを閲覧出来るようにするにはどうしたら良いでしょうか?それとも、全てのスマホから文字化けを防ぐことは不可能なのでしょうか? お知恵をお貸しください。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- Katsu_Kaiz
- ベストアンサー率58% (345/586)
こんばんは。 <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> だと表示できて、 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> だと文字化けするのであれば、おそらく現状では、質問者さんのサイトは《Shift_JIS》で作成されているものと思われます。 《Shift_JIS》で作成したサイトには <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> と書いて、《UTF-8》で作成したサイトには <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> と書く。それ以外のものを書くと文字化けする――というのが、とりあえず文字コードの基本です。 文字コードを説明するのは難しいのですが、たとえば同じ日本語でも、北海道と沖縄では言葉が違いますよね。それとおなじように、コンピュータで使う日本語にもいくつか種類があって、有名なのが《Shift_JIS》と《UTF-8》なんです。なかでも、《UTF-8》は新しい規格で世界中の言語に対応できることを意識しており、これからは《Shift_JIS》よりも《UTF-8》のほうが文字化けしにくくて便利だといわれています。 ホームページビルダーを使ったことがないため何ともいえないものの、下記のように設定を変更すれば、《UTF-8》に対応したサイトをつくれるかもしれません。
- Katsu_Kaiz
- ベストアンサー率58% (345/586)
まず、 <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> こうやって同じタグを二種類も並べるのはよくありません。回答としては1番さんのおっしゃるとおりで、そもそも質問者さんのサイトが、何の《文字コード》で作成されているのかを意識する必要があります。 サイトづくりには、何のソフトを使っていますか? Windows付属の『メモ帳』だと、そもそもShift_JISだのUTF-8だのの設定ができないため、いろいろなトラブルの原因になりかねません。反対に『StyleNote』のような専用ソフトだと、設定画面で文字コードを選べます。こういうソフトを使って、まずは質問者さんのサイトに使われている文字コードを調べてみてください。『StyleNote』だと、画面右下から文字コードを確認できます。 あとは、その文字コードと《Content-Type》をあわせるだけです。Shift_JISが使われていたのなら<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">を、UTF-8だったのなら<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">を書いてあげます。とにかく、サイトの文字コードと《Content-Type》をあわせるのがコツです。 なお、スマホや海外対応ということであれば ◆<head>内に<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">と記述 ◆サイトの文字コードをUTF-8に設定しなおし、そのうえで上書き保存 こんな感じでUTF-8に統一していくことをおすすめします。
- 参考URL:
- http://sn.lowedge.com/
- AsarKingChang
- ベストアンサー率46% (3467/7474)
そうじゃなくて、 実コンテンツは、どの文字コードで書いているのですか? 本文が、UTFなのに、SJISを指定したら、文字化けするのは、当然です。 最初からHTMLをUTF8などで書いたのであれば、 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> のみを指定すればOKです。 これは、文字化けを直すタグではなく、 HTMLがどの文字コードで書かれていると教えているだけなので、 矛盾している場合は、むしろ文字化けを引き起こすので、 まず、HTML自体の文字コードを確認してみてください。
補足
こんにちは。お知恵をお貸しくださり、ありがとうございます! 「文字コード」の意味がそもそも何なのかがわからず、ネットで調べましたがやはり良くわかりませんでした。サイトでは日本語を使っているくらいしかわからず、かなりの初心者です。UTF-8は英語などの外国語、Shift_JISは日本語対応というような理解をしています。違っていたら大変申し訳ないです…。そのため、「サイトの言語は日本語なのだからShift_JISかな?」という感じです。自分なりに調べましたが、本当に理解していないです。 サイト作りにはホームページビルダーを使っています。文章をホームページビルダーで打ち込み、タグをコピペして更新しています。