본문 바로가기
방통대/HTML5

5-2 선택자

by 꿈꾸는 몽나 2024. 3. 23.
728x90

1. 선택자

: 스타일을 적용하려는 HTML 요소를 지정하기 위한 패터

-> 기본 선택자, 가상 선택자(가상 클래스, 가상 요소), 결합자

 

-기본 선택자의 종류

 

 

 

2. 기본 선택자

-전체 선택자

: '*' 기호 사용 -> 웹 문서의 모든 요소에 스타일 적용

* {color: green}

 

-타입 선택자

: 스타일을 적용하려는 HTML 요소의 이름을 직접 사용

table{color: blue}
ul {color: red; font-style: italic; }

 

-클래스 선택자

*같은 요소이지만 서로 다른 스타일을 적용하는 경우

-> 요소명은 동일하게, 클래스명은 서로 다르게 지정

CSS 정의 요소명.클래스명 {속성: 값; ... }
CSS 적용 <요소명 class="클래스명">내용</요소명>

 

*서로 다른 요소이지만 같은 스타일을 적용하는 경우

-> 요소명을 생략한 채 클래스명만 지정

CSS 정의 .클래스명{속성: 값; ...}
CSS 적용 <요소명 class="클래스명">내용</요소명>

 

-아이디 선택자

: 클래스 선택자의 사용 방법과 거의 동일 -> '#' 기호, id 속성

CSS 정의 요소명#아이디명{속성: 값; ...}
           #아이디명{속성: 값; ...}
CSS 적용 <요소명 id="아이디명">내용</요소명>

 

*id 속성 

: 요소의 정체성을 나타냄

: 아이디명은 문서 내부에서 중복되지 않고 오직 하나의 요소에서만 사용

 

 

ex)

 

출력:

 

-속성 선택자

: 요소의 속성값에 대한 표현과 일치하는 HTML 요소 선택

 

형식)

 

 

ex)

 

출력)

 

 

ex2)

 

 

출력2)

 

-가상 선택자

: 웹 문서상에는 존재하지 않지만 어떤 상황이 발생한 경우에만 적용할 수 있도록 임의로 선택자를 지정/사용

-> 기본 선택자로 활용하여 표현할 수 없는 정보를 기반으로 요소 선택

-> 가상 클래스   

형식) 기본선택자: 가상클래스

-> 가상 요소

형식) 기본선택자::가상요소

 

 

ex - 가상 클래스: 링크, 사용자 동작)

// :link 

// 아직 방문하지 않은 모든 링크 선택

 

// :visited 

// 방문한 적이 있는 링크 선택

 

// :hover

// 마우스가 올라간 링크 선택

 

// :active

// 활성화되는(클릭되는) 링크 선택

 

 

출력)

 

 

ex - 가상 클래스: 사용자 인터페이스, 부정)

// :focus

// 포커스를 가진 요소

 

// :enabled

// 활성화된 상태의 요소

 

// :disabled

// 비활성화된 상태의 요소

 

// :checked

// 체크된 input 요소(체크박스, 라디오 버튼)

 

// :not(X)

// X로 표현되지 않은 요소

 

 

출력)

 

 

가상 클래스: 트리구조 형식)

 

 

ex - 트리구조)

// :nth-child(n)

// 동일한 부모 요소 안에서 n번째 자식 요소 선택

 

// :nth-last-child(n)

// 동일한 부모 요소 안에서 끝에서 n번째 자식 요소 선택

 

// :nth-of-type(n)

// 동일한 부모 요소 안의 형제 요소들 중에서 지정한 요소만을 계산하여 n번째 요소 선택

 

// :first-of-type

// = :nth-of-type(1)

 

 

출력)

 

 

 

 

ex - 가상 요소)

// ::first-line

// 특정 요소의 첫 번째 줄을 선택

 

// ::first-letter

// 특정 요소의 첫 번째 글자를 선택

 

// ::before

// 요소 앞에 내용/스타일 추가

 

// ::after

// 요소 뒤에 내용/스타일 추가

 

 

출력)

 

 

 

 

-결합자

: 두 개 이상의 선택자를 문맥이나 요소의 구조를 기반으로 결합하는 방법

 

 

ex)

 

출력)

728x90

'방통대 > HTML5' 카테고리의 다른 글

6-1 글꼴  (0) 2024.03.30
5-3 색상  (0) 2024.03.23
5-1 CSS  (0) 2024.03.23
4-3 기타 요소  (0) 2024.03.16
4-2 데이터 입력과 선택  (0) 2024.03.16