Web制作を始めた初心者の方がCSSを書くとき、
冒頭に現れる「@charset "utf-8";
」という記述を見たことがあるのではないでしょうか。
この記事では、charsetの意味や目的、なぜutf-8
を使うのか、
そして文字化けを防ぐための理由を、HTMLとCSSの関係も交えながらわかりやすく解説していきます。
おねしゃす。
@charset “utf-8″とは?
CSSにおける@charsetは、そのファイルがどの文字コードで書かれているかをブラウザに伝えるための宣言です。
具体的には以下のようにCSSファイルの一番先頭に書きます↓
@charset "utf-8";
CSSこの宣言があることで、ブラウザはCSSを正しく解釈し、文字化けを防ぐことができます。
なぜcharsetを指定する必要があるのか
文字コードを指定しないと、ブラウザが自動で推測してしまうため、
誤った解釈をして「文字化け」が起きる可能性があります。
特に初心者が陥りやすいのは、HTMLはutf-8
で保存しているのに、
CSSが別の文字コードで保存されているケースです。
この場合、CSS内のコメントや日本語フォント指定で問題が発生することがあります。
HTMLとCSSにおけるcharsetの違い
HTMLの場合
HTMLでは、以下のように<meta>
タグで文字コードを指定します。
<meta charset="utf-8">
HTMLCSSの場合
CSSは独立したファイルとして読み込まれるため、
@charset "utf-8";
をファイルの先頭に必ず書く必要があります。
両方でutf-8を指定しておくことで、安定して正しく文字が表示されるようになります。
utf-8を使う理由
現在のWeb制作では、ほとんどの場面でutf-8が推奨されています。その理由は以下の通りです。
- 世界中の言語に対応している
- 国際的な標準として広く使われている
- HTMLとCSSの両方で扱いやすい
- 文字化けが起きにくい
特に多言語サイトを扱うときには、utf-8を選んでおけば安心です。
初心者が覚えておくべきポイント
最後に、初心者が押さえておくべき重要なポイントをまとめます。
- CSSファイルの先頭には @charset “utf-8”; を書く
- HTMLには <meta charset=”utf-8″> を書く
- ファイル保存時も「UTF-8」を選ぶ
- 文字化けを防ぐためには、必ずHTMLとCSSで同じ文字コードを使う
- utf-8は世界標準なので迷ったらこれを選ぶ
まとめ
CSSの@charset “utf-8”は、
ファイルの文字コードをブラウザに伝えるための記述であり、文字化けを防ぐ目的があります。
HTMLとCSS両方でutf-8を統一して使うことが、正しく動作させるための理由です。
Web制作を学ぶ初心者にとっては少し地味な部分ですが、
安定したWebサイトを作る上で欠かせない基礎知識です。
明示的に書いておくことで、文字化けを防げるんやな!
HTML&CSSを体系的に学ぶなら、こちらのおすすめ書籍を参考にしてみてください!▼
