정의 및 사용 방법
* 선택자(전체 선택자, universal selector)는 문서의 모든 요소를 선택합니다.
* {
color: #222222;
}
주의할 점
다음의 예제를 통해 살펴보겠습니다.
<style>
* {
border: 1px solid red;
padding: 10px;
}
p::before {
content: "문단의 ::before ";
font-weight: 600;
color: blue;
background-color: gold;
}
</style>
<div>
<p>문단 요소입니다.</p>
<p>문단의 <span>span</span> 요소입니다.</p>
</div>
문단 요소입니다.
문단의 span 요소입니다.
위 예제를 보면 CSS p::before로 <p>에 가상 요소를 만들어(문단의 ::before 라는 부분) 글자와 배경에 스타일링도 하였습니다.
* 선택자를 사용할 때 이것은 가장 헷갈릴 수 있는 것으로, 주의하세요.
특정 유형의 선택자와 함께 사용
section * { /* section 요소의 모든 자손 요소를 선택 */
background-color: gold;
}
<section>
<h3>section의 제목</h3>
<p>section의 내용입니다.</p>
</section>
section의 제목
section의 내용입니다.
위 예제에서 section *의 의미는 <section>에 포함된 모든 요소를 의미합니다. 이처럼 * 선택자는 특정 유형의 선택자와 함께 사용될 수 있습니다.
* 선택자는 주로 어떻게 쓰이나
HTML의 모든 요소를 선택하는 * 선택자는 주로 CSS를 적용하지 않은 상태에서
브라우저가 기본으로 가지고 있는 기본 스타일인 사용자 에이전트 스타일(User agent style)을 요소에서 모두 제거하는데 많이 쓰입니다.
예를 들어, <h1>~<h6>나 <p> 요소 등은 margin-top과 margin-bottom이 CSS를 적용하지 않아도 브라우저에서 기본 스타일로 적용해 놓았습니다. 이러한 브라우저가 기본으로 가지고 있는 기본 스타일을 제거할 때 주로 사용합니다.
이렇게 브라우저가 기본으로 가지고 있는 기본 스타일을 제거하지 않으면 실제 웹 페이지를 스타일링할 때 특정 요소가 브라우저에서 기본으로 설정한 스타일이 있다는 사실을 고려하지 못해서 원하지 않는 스타일이 적용될 수 있기 때문입니다. 이것은 CSS로 스타일링할 때 매우 번거로울 수 있습니다.
/* 브라우저가 기본으로 가지고 있는 기본 스타일을 제거 */
* {
padding: 0;
margin: 0;
}
/* 커스텀으로 스타일하기 */
p {
margin-top: 0.5em;
margin-bottom: 1em;
}
button {
padding: 0.5em 1.5em;
}
특정 요소의 이름으로 요소를 선택하려면 요소(element) 선택자를 사용하세요.
명세서
| 명세서 사양 | |
|---|---|
*
|
Selectors Level 4 #the-universal-selector |
브라우저 호환성
| 선택자 |
데스크탑 Chrome
|
데스크탑데스크탑 Edge
|
데스크탑 Firefox
|
Safari
|
|---|---|---|---|---|
*
|
1 | 12 | 1 | 1 |
같이 보기
- CSS 요소(element) 선택자 사용 방법
- CSS 속성 선택자 – 속성의 존재와 값으로 요소 선택
- CSS 클래스 선택자 (.class) – 클래스 이름으로 요소 선택
- CSS 아이디 선택자 (#id) – id 값으로 요소 선택
- CSS 가상 클래스(Pseudo-classes) – 개념 및 선택자 목록
- CSS 복합 선택자(Compound Selectors) – 개념 및 사용 방법
- CSS 선택자 결합 기호(Combinators) – 개념 및 기호 목록
- CSS 가상 요소(Pseudo-elements) – 개념 및 선택자 목록
- CSS :root 가상 클래스 선택자 - 문서의 루트 요소 선택
- CSS 선택자의 구체성 값 – 스타일 우선순위를 정확히 이해하기
- CSS !important 사용법 - 스타일 적용 우선 순위의 우선권 부여하기
- CSS 변수 완벽 가이드 - 사용자 지정 CSS 속성 사용하기
- CSS all 속성 – 모든 속성을 재설정하기