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

[css] CSS - 선택자 명시도 계산 - (CSS 적용 선택자우선순위 판별 = CSS적용순서 체크)

목차

  1. CSS 명시도 계산법
  2. CSS 명시도 계산기
  3. CSS 명시도 예제1 - 기본 예제
  4. CSS 명시도 예제2 - 명시도 같으면, 나중에 선언된 게 우선 적용
  5. CSS 명시도 예제3 - 클래스 추가해 명시도 높여 우선 적용시키기
  6. CSS 명시도 예제4 - 명시도 (같은 vs 다른) 경우
  7. CSS 명시도 예제5 - 아이디・클래스 우선순위
  8. CSS 명시도 시험보기

 

CSS 명시도 계산법

※ 명시도 (Specificity)

 

1.
CSS 선택자 표현 방법을 숫자 4자리로 표현 후, 숫자 큰 순으로 우선순위 결정.
(예) ○○○○

2.
각 자리의 숫자 결정법

  • 천 자리 : inline (= 인라인) 스타일로 추가
  • 백 자리 : # (= 아이디 = id) 선택자 개수
  • 십 자리 : . (= 클래스 = class) 선택자 개수
  • 일 자리 : 요소 (=태그 = 엘러먼트 element) 선택자 개수

 
3.
자손선택자 경우, 좀 더 직접적인 조상을 이용해 표현하더라도
명시도 동일 시, 나중 선언된 것이 적용됨. (아래 예제 2 참고)

 

※ 보통, 내부/외부스타일로 정의하므로 보통 백~일자리 숫자 크기순으로 결정.


CSS 명시도 계산기

 

https://specificity.keegan.st/

 

 

CSS 명시도 예제1 - 기본 예제

 

ul#primary-nav li.active

 

[계산]

  • # (아이디) 개수 : 1개 = 1  (백자리)
  • . (클래스) 개수 : 1개 = 1 (십자리)
  • 요소 개수 : 2개 = 2 (일자리)

∴ 명시도 : 0112 

 

CSS 명시도 예제2 - 명시도 같으면, 나중에 선언된 게 우선 적용


<style>

p > span {color:blue;} /* 명시도 : 0002 */

div span {color:red;} /* 명시도 : 0002 */
</style>

 

<div>

  <p>

    <span>홈짱닷컴 Homzzang.com</span>

  </p>

</div>


결과보기

※ 직접 조상을 이용해 표현해도 마찬가지. ㅡㅡ;


 

<style>

div span {color:red;} /* 명시도: 0002 */

p > span {color:blue;} /* 명시도: 0002 */
</style>

 

<div>

  <p>

    <span>홈짱닷컴 Homzzang.com</span>

  </p>

</div>


결과보기

 

CSS 명시도 예제3 - 클래스 추가해 명시도 높여 우선 적용시키기


<style>

p.hz > span {color:blue;} /* 명시도: 0012 */

div span {color:red;} /* 명시도: 0002 */
</style>

 

<div>

  <p class='hz'>

    <span>홈짱닷컴 Homzzang.com</span>

  </p>

</div>


결과보기

 

CSS 명시도 예제4 - 명시도 (같은 vs 다른) 경우

[명시도가 같은 경우]

 

<style>

p.a {color:blue;}

p.b {color:red; font-weight:bold; text-decoration:underline;}

</style>

 

<p class=a> 홈짱닷컴 Homzzang.com</p>

<p class=b> 홈짱닷컴 Homzzang.com</p>

 

결과보기


[명시도가 다른 경우]

 

<style>

p.a {color:blue;} /* a 클래스 있는 p 경우 해당 속성에 한해 우선 적용 */

p {color:red; font-weight:bold; text-decoration:underline;} /* 모든 P 요소에 적용 */

</style>

 

<p class='a'> 홈짱닷컴 Homzzang.com</p>

<p> 홈짱닷컴 Homzzang.com</p>

 

결과보기

 

CSS 명시도 예제5 - 아이디・클래스 우선순위

 

<style>

p#hz {color:red;}

p.hz {color:blue}

</style>

 

<p id='hz' class='hz'>홈짱닷컴 Homzzang.com</p>

<p class='hz'>홈짱닷컴 Homzzang.com</p>

<p>홈짱닷컴 Homzzang.com</p>

 

결과보기

PS. 아이디/클래스 우선순위

 

CSS 명시도 시험보기

 

https://codepen.io/sinbi/pen/GaGVKa

 



분류 제목
position CSS - clear 속성 ★ - float 해제후 줄바꿈 (= 클리어속성, clear속성, 상속 X)
resize CSS - resize 속성 - 사용자의 요소크기 조정권한 지정 (= resize속성 = 리사이즈속성, IE…
text CSS - white-space 속성 ★ - 공백처리/줄바꿈 지정 (= white-space속성 / 화이트스…
text CSS - text-align 속성 ★ - 텍스트정렬 (= text-align속성 = 텍스트얼라인속성)
css CSS - opacity 속성 - 불투명도 (= opacity속성 = 오패서티속성/오페서티속성) ※ 있는데 …
css CSS - 글자자르기 (= 문자열자르기 = 문자열줄이기= 글자길이자르기 = 문자열자르기 = 글자수자르기 = …
selector CSS - :read-only 가상선택자 - 읽기전용요소 (= readonly속성있는요소 = :read-on…
font CSS - @font-face 구문 - 다운받은 웹폰트적용 (= @font-face쿼리 = 다운글꼴적용 = …
selector CSS - 선택자 (Selector) 종류 + 선택자에 사용가능한 문자 (= 선택자 이름짓기 주의사항)
background CSS - background-position 속성 = 배경위치 (= background-position속성…
css CSS - 부모요소 안 자식요소 너비를 부모요소 밖으로 화면너비 100% 채우기. (= 부모이탈자식너비전체설…
border CSS - border-color 속성 - 테두리색상일괄 (= 테두리색깔일괄 = border-color속성 …
intro CSS - CSS RESET(= CSS리셋 = CSS초기화 = HTML요소초기화)
css CSS - 화면 비율 유지. (= 요소 종횡비 유지 = 반응형 레이아웃 사이즈/크기)
position CSS - clip 속성 (폐기예고) - 이미지 자르기 (= 일부만 노출 = clip속성 = 클립속성)
table CSS - border-spacing 속성 - 테이블셀 테두리간격 (= border-spacing속성 = 보…
font CSS - font-weight 속성 ★ - 글자굵기 (= font-weight속성 = 폰트굵기 = 글씨체굵…
text CSS - vertical-align 속성 ★ - 텍스트수직정렬 (= vertical-align속성 = 버티…
position CSS - bottom 속성 ★ - 기준하단 (= bottom속성 = 하단기준 = 아래기준 = 바텀속성 = …
animation CSS - animation-delay 속성 - 애니지연시간 (= 작동지연시간 = 작동대기시간 = 작동준비시…
25/27
목록
찾아주셔서 감사합니다. Since 2012