topic난이도 · 약 15

셀렉터의 세계

요소, 클래스, ID 셀렉터를 구별하고 우선순위(특이성)를 이해한다.

#셀렉터#클래스#ID#우선순위
왜 배우는가

웹 페이지에는 수십 개의 p, h2 태그가 있다. 그중 특정 문단만 빨갛게, 특정 제목만 크게 만들려면 셀렉터를 정확히 알아야 한다.

요소, 클래스, ID — 세 가지로 모든 것을 선택합니다

css
/* 1. 요소 셀렉터 — 모든 p 태그 */
p { color: gray; }

/* 2. 클래스 셀렉터 — .으로 시작 */
.highlight { background: yellow; }

/* 3. ID 셀렉터 — #으로 시작 */
#main-title { font-size: 2.5rem; }

요소(p), 클래스(.highlight), ID(#main-title) 세 종류의 셀렉터.

html
<!-- HTML에서 class와 id 사용 -->
<h1 id="main-title">김짓의 홈페이지</h1>
<p class="highlight">중요한 내용입니다.</p>
<p>일반 문단입니다.</p>
<p class="highlight">이것도 중요합니다.</p>

class는 여러 요소에 재사용, id는 페이지에서 딱 하나만 사용.

class = 여러 요소에 재사용 (`.highlight`를 여러 곳에) id = 페이지에서 딱 하나 (`#main-title`은 유일) 대부분의 경우 class를 사용하는 것이 좋습니다.

같은 요소에 여러 규칙이 겹치면 누가 이길까?

1. 요소 — p { } — 가장 약함 2. 클래스 — .class { } — 중간 3. ID — #id { } — 강함 4. 인라인 — style="" — 가장 강함

우선순위: 인라인 > ID > 클래스 > 요소 같은 우선순위면 나중에 작성된 규칙이 이긴다 (Cascade).

홈페이��에 클래스를 추가하고 스���일을 적용해봅시다

css
.section-title {
  color: #1A1A2E;
  font-size: 1.5rem;
  border-bottom: 2px solid #4ECDC4;
  padding-bottom: 8px;
  margin-top: 24px;
}

.card {
  background: white;
  border: 1px solid #ddd;
  border-radius: 12px;
  padding: 16px;
  margin-top: 12px;
}

클래스 셀렉터로 section-title과 card 스타일을 정의한 예시.

셀렉터설명
태그 셀렉터태그 이름으로 선택 — p, h1, div
클래스 셀렉터점(.)으로 시작 — .highlight, .card
ID 셀렉터샵(#)으로 시작 — #header, #main
조합설명
자손 셀렉터공백으로 구분 — div p (div 안의 모든 p)
그룹 셀렉터쉼표로 구분 — h1, h2 (둘 다 선택)

클래스는 여러 요소에 재사용, ID는 페이지당 하나만 사용하세요.

실기 드릴 3문항
edit실기 드릴 · 단답형

CSS에서 클래스 셀렉터의 올바른 표기법은?

check_circle실기 드릴 · OX

하나의 HTML 요소에 여러 class를 동시에 적용할 수 있다.

check_circle실기 드릴 · OX

color 속성은 글자 색이 아니라 배경 색을 바꾼다.