Menu

CSS コメントの書き方: /* */ の使い方とコメントアウト

CSS のコメントの書き方は /* ... */ の 1 種類だけで、1 行でも複数行でも使えます。コメントを書ける場所、ルールのコメントアウト、// や入れ子のコメントが次のルールを黙って壊す理由を解説します。

このページのコードはエディタで実行できます - 編集してすぐに結果を確認できます。

CSS コメントの書き方

CSS のコメントは /* で始まり */ で終わります。その間にあるものは、1 行でも 20 行でもすべてブラウザに無視されます。

書き方はこの 1 種類だけです。CSS には別の 1 行コメントはありません。

コメントを書ける場所

コメントは空白を置ける場所ならどこにでも書けます。ルールの間、宣言の間、値の後、セレクタリストの中などです。.css ファイルでも、<style> 要素でも、style 属性でも同じように使えます。

/* Buttons */
.btn,          /* default */
.btn-primary { /* variant */
  padding: 8px 14px; /* 8px top and bottom, 14px sides */
}
<p style="color: #16a34a; /* inline comments work too */">Hello</p>

HTML のコメント <!-- ... --> はマークアップ用で、CSS には使えません。2 つの書き方の比較は HTML コメントのページ にあります。

コードをコメントアウトする

コメントの日常的な使い方は、宣言を削除せずに無効にして、その効果を確かめることです。/* */ で囲みます:

border の行を囲む /* と */ を消すと、オレンジ色の枠線が現れます。ルール全体をコメントアウトするときも同じで、セレクタの前に /*、閉じ波かっこの後に */ を置きます。

ほとんどのエディタではこの切り替えができます。行を選択して Ctrl + / (macOS は Cmd + /) を押します。

// で CSS が壊れる理由

// は JavaScript、Sass、Less ではコメントなので、コメントに見えます。しかし CSS ではただの 2 文字で、後に続くものの一部になります。するとブラウザは無効なセレクタとみなし、次のルールをまるごと捨てます。エラーメッセージは出ません。

ブラウザは // this is NOT a comment .one を 1 つのセレクタとして読みました。これは無効なので、.one のルールがまるごと捨てられています。この行を /* this is a comment */ に変えると緑の背景が戻ります。

コメントは入れ子にできない

コメントは最初の */ で終わります。すでにコメントを含むコードを囲むと、外側のコメントが途中で終わってしまいます:

コメントを含むブロックをコメントアウトするときは、先に内側のコメントを削除するか短くしましょう。

コメントでスタイルシートを整理する

長いスタイルシートは、セクションの見出しを付けると読みやすくなります。よく使われる書き方です:

/* ==========================================
   Layout
   ========================================== */

.page { max-width: 960px; margin: 0 auto; }

/* ------------------------------------------
   Header
   ------------------------------------------ */

.header { padding: 16px; }

/*! License: MIT (many minifiers keep comments that start with "!") */

コメントはファイルの一部としてすべての訪問者に送られ、ページのソースにも表示されます。パスワード、社内の URL、公開したくないメモは書かないでください。

よくある間違い

  • // を使う。 次のルールが黙って消えます。/* */ を使いましょう。
  • コメントを入れ子にする。 最初の */ でコメントが終わり、残りが次のルールを壊します。
  • 閉じの */ を忘れる。 /* 以降、スタイルシートの最後までがすべてコメントになります。
  • CSS の中で <!-- --> を使う。 これは HTML のコメントの書き方で、CSS はコメントアウトされません。
  • コメントに機密情報を残す。 スタイルシートと一緒にブラウザに送られます。

よくある質問

CSS でコメントを書くにはどうすればいいですか?

テキストを /* と */ で囲みます: /* This is a comment */。1 行でも複数行でも同じ書き方で、スタイルシート内の空白を置ける場所ならどこにでも書けます。

CSS で // はコメントとして使えますか?

使えません。CSS には 1 行コメントがありません。// は次のセレクタや宣言の一部として読まれて無効になるため、ブラウザはそのルールや宣言をまるごと捨てます。Sass や Less などのプリプロセッサは // を受け付けますが、素の CSS では使えません。

CSS のコメントは入れ子にできますか?

できません。コメントは最初の */ で終わるので、/* a /* b */ c */ は b の後で終わり、残った c */ が不正な文字列になって次のルールを壊します。

CSS をコメントアウトするショートカットは?

VS Code を含むほとんどのエディタでは、Windows と Linux は Ctrl + /、macOS は Cmd + / で選択した行を /* */ で囲めます。もう一度押すとコメントが外れます。

CSS のコメントはパフォーマンスに影響しますか?

ファイルのバイト数が増えるだけです。ブラウザは解析時にコメントを捨てます。ビルドツールはスタイルシートを圧縮してコメントを削除しますが、多くのツールは /*! で始まるコメントを残します。これはライセンス表記に使う慣習です。

Coddy programming languages illustration

Coddyでコードを学ぼう

始める