MENU

【初心者向け】classとidの違いをめちゃくちゃ分かりやすく解説!HTML・CSS基礎

HTMLやCSSを学び始めると必ず出てくる「class」と「id」。
でも「どう違うの?」「いつどっちを使えばいいの?」と迷う方も多いですよね。

この記事では、初心者でも一瞬で理解できるように、ボタンの具体例を使って「class」と「id」の違いをめちゃくちゃ分かりやすく解説します。
これを読めば、Web制作の基礎でつまずかなくなります!

TOC

classとidって何?どう違うの?

HTMLやCSSを学び始めると必ず出てくるのが「class」と「id」。
でも、「どう違うの?」「いつどっちを使えばいいの?」 と迷う初心者は多いです。

この記事では、具体的なボタンの例を使って、初心者でも一瞬で理解できるように「class」と「id」の違いをめちゃくちゃ分かりやすく解説します。

👉 先に「HTMLの基本要素」について知りたい方は、こちらの記事をどうぞ。
・【HTML入門】要素とは?ブロック要素とインライン要素の違いを初心者向けに徹底解説!

class(クラス)とは?

**class(クラス)**は、複数の要素に同じスタイルを適用したいときに使います。

たとえば、ボタンが6つあります。

例:赤いボタン3つ、緑のボタン3つにスタイルを分けたい場合、

htmlで作成したボタンが6つあります

赤いボタン3つと緑のボタン3つに分けます。この場合、複数のものに同じスタイルを適用したい時にあたるので、classを使います。
赤いボタンにはclass名に ” red-btn “ 
緑のボタンにはclass名に ” green-btn  というふうに、class名に色を入れてあげると分かりやすくなります。

6つのボタンを赤いボタン3つ緑のボタン3つに分けるときはclassを使う

See the Pen Untitled by VA-Rie (@VA-Rie) on CodePen.

と指定すれば、それぞれの色に応じてCSSをあてられます。
👉 詳しい使い方はこちらで解説しています:
class の使い方はこちらから→HTMLのclassの使い方!を分かりやすく解説!

では、次のような場合はどうでしょう?

6つのボタンを赤いボタン4つ、黄色いボタン1つ、緑のボタン1つに分ける場合も、classを使います


赤いボタンは複数あるのでclassを使うのは分かると思います。
黄のボタンと緑のボタンはそれぞれ1つですが、この場合もclassを使います。
「複数のものに同じスタイルを適用したい時」この同じスタイルを指すのはボタンであって、色ではありません。
なので、
赤いボタンにはclass名に ” red-btn “ 
黄のボタンにはclass名に ” yello-btn “ 
緑のボタンにはclass名に ” green-btn として区別をしてあげます。

id(アイディー)とは?

id(アイディー)は、ページ内で1つだけの特別な要素に使います。
例えば「特別なボタン」だけ違う見た目にしたいとき:

👉 idは1ページ内で重複してはいけません。

特別なボタンにだけidを使いますこれがclassとidの違いです

classとidの違いを表で整理

項目class(クラス)id(アイディー)
用途複数の要素に共通スタイルを適用1つだけの特別な要素に適用
使用数複数OK1ページに1つだけ
実例ボタンの色分け、リストの装飾ナビゲーションの固定要素、特別ボタン

👉 よくある質問

  • 「ボタンが1つしかないけど、classでいいの?」 → はい、classで問題ありません。(共通の性質を持たせる考え方だから)

どっちを使えばいいの?初心者へのおすすめ

結論:

  • 複数に使うなら class
  • 1つだけの特別なものなら id

ただし、基本的には classを優先して使う のがおすすめです。
理由は以下の通り:

  • CSSやJavaScriptの再利用性が高い
  • idを多用すると管理が難しくなる

👉 関連記事

Summary

  • class:複数の要素に同じスタイルをつけたいとき
  • id:1つだけの特別な要素につけたいとき
  • 初心者は 基本的にclassを使い、特別な場合だけidを使う のがおすすめ

この記事を理解すれば、HTMLとCSSの基礎で迷わなくなります。

👉 読むと理解が深まります:

次回は、初心者でもできる!HTMLとCSSで基本のボタンを作ろう!

Let's share this post !

Author of this article

このブログでは、プログラミング初心者としての挑戦や気づきを記録し、同じように学び始めた方々と知識を共有できたらと思っています。
他の初心者の方が、気軽にプログラミングを始められるような情報を提供することを目標としています。

Comments

To comment

TOC