본문 바로가기
카테고리 없음

class와 id 선택자의 차이 (CSS에서 언제 어떻게 써야 할까?)

by 레이어드디 2026. 4. 7.

class와 id 선택자의 차이

 

CSS를 배우기 시작하면 가장 먼저 자주 만나게 되는 선택자가 바로 classid입니다.

둘 다 HTML 요소를 선택해서 스타일을 적용할 수 있다는 점은 같지만, 사용 목적과 우선순위, 재사용성에서 큰 차이가 있습니다.

 

초보자 분들은 "둘 다 똑같이 스타일 주는 거 아닌가?"라고 생각하기 쉽지만, 실무에서는 이 차이를 정확히 이해하고 써야 유지보수와 협업이 쉬워집니다.

특히 퍼블리싱과 프론트엔드 작업에서는 잘못된 선택자 사용이 CSS 충돌로 이어질 수 있습니다.

 

이번 글에서는 class와 id 선택자의 차이, 각각의 특징, 그리고 실무에서 어떤 기준으로 선택해야 하는지까지 쉽게 정리해보겠습니다.

 

 

class 선택자란?

class는 여러 요소에 공통 스타일을 재사용하기 위해 사용하는 선택자입니다.

.button {
  background: black;
  color: white;
}

 

HTML에서는 다음처럼 사용합니다.

<button class="button">버튼1</button>
<button class="button">버튼2</button>

 

같은 class 이름을 여러 요소에 반복해서 사용할 수 있다는 것이 가장 큰 특징입니다.

 

 

id 선택자란?

id는 문서 안에서 단 하나의 고유한 요소를 선택할 때 사용합니다.

#header {
  position: fixed;
}

 

 

HTML 예시는 다음과 같습니다.

<header id="header">헤더 영역</header>

 

id는 HTML 문서 내에서 중복 없이 한 번만 사용하는 것이 원칙입니다.

 

 

class와 id의 가장 큰 차이

1. 재사용성

class는 여러 요소에서 반복 사용이 가능합니다.

<div class="card"></div>
<div class="card"></div>

 

반면 id는 한 문서에서 한 번만 사용해야 합니다.

<div id="main"></div>

 

 

2. CSS 우선순위

CSS에서는 id 선택자가 class보다 우선순위가 더 높습니다.

#box {
  color: red;
}

.box {
  color: blue;
}

 

같은 요소에 둘 다 적용되면 id의 빨간색이 우선 적용됩니다.

 

 

3. 사용 목적

class > 스타일 재사용, 컴포넌트 단위

id  > 고유 영역, JavaScript 제어, anchor link

 

 

실무에서는 class를 더 많이 쓰는 이유

실무에서는 대부분 class 기반으로 CSS를 작성합니다.

 

그 이유는 다음과 같습니다.

  • 재사용 가능
  • 유지보수 쉬움
  • CSS 충돌 방지
  • 컴포넌트 구조에 적합

예를 들어 버튼, 카드, 배너 같은 UI는 class로 만드는 것이 일반적입니다.

 

 

id는 언제 사용하는 것이 좋을까?

id는 다음과 같은 경우에 사용하는 것이 적절합니다.

고유한 레이아웃 영역

<main id="content"></main>

 

JavaScript 요소 선택

document.getElementById("modal")

 

페이지 내부 이동(anchor)

<a href="#contact">문의로 이동</a>
<section id="contact"></section>

 

 

잘못된 사용 예

아래처럼 반복되는 요소에 id를 쓰는 것은 좋지 않습니다.

<div id="card"></div>
<div id="card"></div>

 

이 경우 HTML 규칙 위반이며 JavaScript 선택에도 문제가 생깁니다.

 

 

class와 id 함께 사용하기

실무에서는 함께 사용하는 경우도 많습니다.

<section id="about" class="section">
  소개 영역
</section>

 

이 구조는 id로 고유 영역을 지정하고, class로 공통 스타일을 적용하는 방식입니다.

 

 

SEO와 접근성 관점

class와 id 자체가 SEO에 직접 영향을 주지는 않지만, 구조를 명확하게 만드는 데 도움이 됩니다.

특히 id는 내부 링크 구조를 만들 때 유용하여 긴 페이지의 사용자 경험을 개선할 수 있습니다.

 

실무 추천 사용 기준

실무에서는 아래 기준으로 생각하면 가장 쉽습니다.

  • 반복 스타일 = class
  • 고유 영역 = id
  • JavaScript 선택 = id 또는 data-*
  • 컴포넌트 UI = class

 

마무리

class와 id는 비슷해 보여도 목적이 명확히 다른 선택자입니다.

정리하면 다음과 같습니다.

  • class는 재사용 가능한 스타일용
  • id는 문서 내 고유 요소용
  • CSS는 class 중심으로 작성하는 것이 실무에 유리

 

처음부터 이 기준을 잘 잡아두면 CSS 구조가 훨씬 깔끔해지고 유지보수도 쉬워집니다.


소개 및 문의 · 개인정보처리방침 · 면책조항

© 2026 하루 아키텍트