• 회원가입
  • 로그인
  • 구글아이디로 로그인

[selector] CSS - Pseudo Class + Pseudo Element - (가상클래스 + 가상요소) = 가상선택자 종류 ※ 가상요소에 링크걸기

목차
  1. 가상클래스 (Pseudo Class) - 콜론 1개 사용
  2. 가상요소 (Pseudo Element) - 콜론 2개 사용
  3. 가상요소에만 링크걸기

 

가상클래스 (Pseudo Class) - 콜론 1개 사용

Selector 예제 예제 설명
:active a:active 활성화된 링크 선택.
:checked input:checked 모든 체크된 <input> 요소 선택.
:disabled input:disabled 모든 작동차단된 <input> 요소 선택.
:empty p:empty 자식요소 없는 모든 <p> 요소 선택.
:enabled input:enabled 모든 작동가능한 <input>요소 선택.
:first-child p:first-child 그 부모의 첫번째 자식인 모든 <p> 요소 선택.
:first-of-type p:first-of-type 그 부모의 첫번째 <p> 요소인 모든 <p> 요소 선택.
:focus input:focus 포커스 갖는 (=현재, 커서 위치한) <input> 요소 선택.
:hover a:hover 마우스커서가 위에 올려진 링크 선택.
:in-range input:in-range 지정범위안 값을 갖는 <input> 요소들 선택.
:invalid input:invalid 유효하지 않는 값을 갖는 모든 <input> 요소 선택.
:lang(language) p:lang(ko) "ko"로 시작하는 lang 속성값 갖는 모든 <p> 요소 선택.
:last-child p:last-child 그 부모의 마지막 자식인 모든 <p> 요소 선택.
:last-of-type p:last-of-type 그 부모의 마지막 <p> 요소인 모든 <p> 요소 선택.
:link a:link 모든 미방문 링크 선택.
:not(selector) :not(p) <p> 요소가 아닌 모든 요소 선택.
:nth-child(n) p:nth-child(2) 그 부모의 2번째 자식인 모든 <p> 요소 선택.
:nth-last-child(n) p:nth-last-child(2) 그 부모의 마지막에서 2번째 자식인 모든 <p> 요소 선택.
:nth-last-of-type(n) p:nth-last-of-type(2) 그 부모의 마지막에서 2번째 <p>요소인 모든 <p> 요소 선택.
:nth-of-type(n) p:nth-of-type(2) 그 부모의 2번째 <p> 요소인 모든 <p> 요소 선택.
:only-of-type p:only-of-type 그 부모의 유일한 <p> 요소인 모든 <p> 요소 선택.
:only-child p:only-child 그 부모의 유일한 자식인 모든 <p> 요소 선택.
:optional input:optional required 속성 안 갖는 <input> 요소 선택.
:out-of-range input:out-of-range 지정범위밖 값을 갖는 <input> 요소 선택.
:read-only input:read-only "readonly" 속성 지정된 <input> 요소 선택.
:read-write input:read-write readonly 속성 안 갖는 <input> 요소 선택.
:required input:required required 속성 지정된 <input> 요소 선택.
:root root 웹문서의 root 요소 선택.
:target #news:target 해당 앵커 이름 포함 URL 클릭해
현재 활성화가 된 #hz 요소 선택.
(= 내부링크목적지요소 선택)
:valid input:valid 유효한 값 갖는 모든 <input> 요소 선택.
:visited a:visited 이미 방문한 모든 링크 선택.

PS. 가상클래스 개념

  • 특정 상태 표시에 사용. 즉, 특정 사용자 행동이나 요소의 상태에 따라 스타일 적용. 
  • 주로 사용자 상호작용이나 요소의 상태 변화에 반응해 스타일을 변경하는 데 사용. 

 

가상요소 (Pseudo Element) - 콜론 2개 사용

Selector 예제 예제 의미
::after p::after 모든 <p> 요소 뒤에 내용 삽입.
::before p::before 모든 <p> 요소 앞에 내용 삽입.
::first-letter p::first-letter 모든 <p> 요소의 첫번째 글자 선택.
::first-line p::first-line 모든 <p> 요소의 첫번째 라인 선택.
::selection p::selection 사용자 선택요소.

PS. 가상요소 개념

  • 실제 DOM 요소를 생성하지 않고, 기존 요소의 일부분에 스타일 적용하는 데 사용. 
  • 주로 요소의 앞이나 뒤에 콘텐츠를 추가하거나, 요소의 일부를 스타일링할 때 사용. 

 

가상요소에만 링크걸기

※ 가상요소는 DOM이 아니라서 일반적인 방법으로는 링크 걸기 불가능.

 

<script src="https://code.jquery.com/jquery-latest.js"></script>

<style>

#hz {

  display:inline-block;

  border:1px solid red;

  position: relative;

  pointer-events: none;

}

 

#hz:after {

  content: 'Homzzang.com';

  position: absolute;

  pointer-events: all;

  border:1px solid blue;

  margin-left:10px;

}

</style>

<div id="hz">홈짱닷컴</div>

 

<script>

let hz = document.querySelector('#hz');

hz.addEventListener('click', e => top.location.href="https://homzzang.com");

</script>

 

결과보기


PS. 가상요소 클릭 시, 본래 요소에 내용 추가

 

hz.addEventListener('click', e => e.target.innerText += `입력할 내용`);

 

바람처럼나 님 (210103) https://sunshine7e7.tistory.com/32 


분류 제목
text CSS - text-decoration-line 속성 - 텍스트라인위치종류 (= text-decoration…
text CSS - text-decoration-style 속성 - 텍스트라인모양 (굵은선, 파선, 점선, 물결선 등…
text CSS - text-decoration-color 속성 - 텍스트라인색깔 (= 텍스트데커레이션컬러속성, IE…
css CSS - 반응형 마름모 갤러리 (Responsible Rhomb gallery on grids + clip…
css CSS - 스크롤 따라다니는 양사이드배너 (= 양쪽날개배너 = 사이드고정배너) 3단 레이아웃
css CSS - 이미지반전 (= 이미지좌우반전 = 이미지좌우대칭변환)
table CSS - table-layout 속성 ★★★ - 테이블 셀, 행 및 열을 레이아웃 (= table-layo…
css CSS - 인풋태그 높이통일 (= 동일높이 = 높이동일 = 높이같게 = 세로길이 똑같게 = 높이맞추기) IN…
image CSS - filter 속성 - 이미지필터효과 (= filter속성 = 필터속성) ※ 흑백이미지만들기 ※ 이…
func CSS - clamp() 함수 - 최소값과 최대값 사이의 중간값 반환. (= clamp함수 = 클램프함수)
func CSS - max() 함수 - 최대값 (= max함수 = 맥스함수)
func CSS - min() 함수 - 최소값 (= min함수 = 민함수)
grid CSS - Grid Intro - 그리드 소개 (※ 그리드 관련 속성 개괄)
grid CSS - Grid Container - 그리드 컨테이너
grid CSS - Grid Item - 그리드 아이템
css CSS - 네임펜 (= 형광펜) 효과
css CSS - IE 전용 CSS핵
selector CSS - :has() 가상선택자 - 지정 요소 갖는 모든 요소 선택. (= :has선택자 = 해즈선택자)
css CSS - 화면 비율 유지. (= 요소 종횡비 유지 = 반응형 레이아웃 사이즈/크기)
css CSS - unset 속성값 - 상속값 존재 유무에 따라, inherit・initial 속성값 사용. (= …
15/25
목록
찾아주셔서 감사합니다. Since 2012