반응형
CSS3에서 리스트에서 특정 리스트만 색을 주지 않거나, 밑줄을 빼고 싶을때 사용합니다.
선택자 :not() 사용법
:not() 선택자는 ()안에 선택자를 제외한 나머지에게 일괄적으로 적용시킨다는 의미입니다.
HTML
<ul>
<li>1번입니다.</li>
<li>2번입니다.</li>
<li class="work">3번입니다.</li>
<li>4번입니다.</li>
<li>5번입니다.</li>
<li>6번입니다.</li>
</ul>
CSS
li {
list-style: none;
}
li:not(.work) {
color: green;
}
li:not(:first-child) {
border-bottom: 1px solid #ddd;
}
li:not(:last-child) {
font-weight: bold;
font-size: 1.2rem;
}
li:not(:nth-child(4)) {
font-style: italic;
}
위 코드에 li태그들을 살펴보면 하나의 태그만 제외하고 나머지에는 모두 CSS적용이 된 것을 확인 할 수 있습니다.
클래스로 적용시키기
li:not(.work) { color: green; } // .work 클래스를 제외한 나머지 <li></li>태그에 컬러를 초록색으로 바꿔줍니다.
첫번째 li만 빼고 적용시키기
li:not(:first-child) { border-bottom: 1px solid #DDD; } // 첫번째 <li></li>태그만 빼고 아래 선을 추가해줍니다.
마지막 li만 빼고 적용시키기
li:not(:last-child) { font-weight: bold; font-size: 1.2rem; } // 마지막 <li></li>태그만 빼고 글씨를 굵게, 글씨 크기를 1.2rem으로 늘려줍니다.
특정 순서에 있는 li만 빼고 적용시키기
li:not(:nth-child(4)) { font-style: italic; } // 4번째 <li></li>태그만 빼고 기울임을 추가해줍니다.
이외에도 가상선택자 ( ::before, ::after )에도 사용이 가능합니다.
li:not(:first-child)::before { content: "#"; } // 첫번째 <li></li>태그만 빼고 #을 추가해줍니다.
이렇게 :not()선택자 하나만으로 여러가지 가능성을 발견 할 수 있었습니다.
반응형
'HTML | CSS' 카테고리의 다른 글
[ HTML ] file://웹페이지를 로컬에서( 프로토콜을 통해 ) 열기 (2) | 2023.11.09 |
---|---|
[ CSS ] table 태그 내부에 tr요소에서 border표현하기 (0) | 2023.08.23 |
[ CSS ] select 화살표 제거하기 (0) | 2023.04.17 |
[ CSS ] input type Number Up / Down 화살표 제거하기 (0) | 2023.04.17 |
[ CSS / SCSS ] 스크롤바 제거하기 (0) | 2023.03.28 |