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

[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 - direction 속성 - 텍스트방향 (= 텍스트진행방향 = direction속성 = 디렉션속성)…
box CSS - padding-top 속성 - 안쪽여백상단 (= padding-top속성 = 패딩탑속성 = 패딩톱…
box CSS - margin-bottom 속성 - 하단바깥여백 (= 하단마진, 아래쪽마진 = margin-bott…
gradient CSS - Gradient (그레이디언트 = 그라디언트) 종류 - (색번짐변화=색변화) : IE 10
selector CSS - [attribute] 속성선택자 - 특정 속성 보유 요소 (IE7) ※ 여러 속성 보유 선택자
box CSS - padding-left 속성 - 안쪽여백좌측 (= padding-left속성 = 패딩레프트속성)
background CSS - background-repeat 속성 ★ - 배경이미지 반복 (= 배경반복 = background…
selector CSS - [attribute=value] 속성선택자 - 지정속성값보유요소 선택 (IE7) ※ 특정 (속성/…
text CSS - word-break 속성 ★ - 한중일 외의 언어 (단어기준/글자기준) 줄바꿈규칙 지정 (= 줄…
box CSS - margin-right 속성 - 바깥여백우측 (= margin-right속성 = 마진라이트속성)
func CSS - var() 함수 ★★ - 사용자정의 속성/속성값 변수 호출 (= var함수 = 바함수) ※ :r…
selector CSS - element element 자손선택자 ★ - 자손요소 (요소선택자)
animation CSS - @keyframes 구문 - 애니메이션 코드 사용 선언 (= 애니사용 = @keyframes속성 …
table CSS - caption-side 속성 - 테이블표제위치 (= caption-side속성 = 캡션사이드속성)
box CSS - margin-left 속성 - 요소의 왼쪽 바깥 여백 (= 바깥 좌측 여백 = 좌측마진 = 왼쪽마…
text CSS - unicode-bidi 속성 - 텍스트글자방향 (= unicode-bidi속성 = 유니코드비디속성…
responsive CSS - @media 구문 - 미디어쿼리 이용한 반응형 스타일 구현 (= media쿼리) ※ IE/Edge…
css CSS - 선택자 명시도 계산 - (CSS 적용 선택자우선순위 판별 = CSS적용순서 체크)
text CSS - text-decoration-style 속성 - 텍스트라인모양 (굵은선, 파선, 점선, 물결선 등…
border CSS - border-image 속성 - 테두리이미지 (= border-image속성 = 보더이미지속성, …
20/27
목록
찾아주셔서 감사합니다. Since 2012