본문 바로가기
  • Coding & Book
WEB/CSS3

01-02. 다양한 선택자들

by 루이3 2022. 12. 14.

1.자손 선택자 와 후손 선택자(그림)

 

div태그의 자손 과 후손

 

 

2. 후손 선택자

후손 선택자는 선택자A의 후손인 B를 선택 하는것으로 (선택자 A 선택자 B)로 나타낸다.

<!DOCTYPE html>
<html>
    <head>
        <title>loui3</title>
        <style>
            #header h1 {color : red;} /*선택자A 선택자B*/
            #section h1 {color : blue;} /*선택자A 선택자B*/
        </style>
    </head>

    <body>
        <div id="header">
            <h1 class="title">css3</h1>
            <div id="nav">
                <h1>html css script</h1>
            </div>
        </div>
        <div id="section">
            <h1 class="title">css3</h1>
            <p>loui3 html css script</p>
        </div>
    </body>
</html>

출력 내용1

 

3.자손선택자

①자손 선택자는 선택자A의 자손인 선택자 B를 선택 하는것이고 선택자 (A >선택자B) 로 나타낸다

<!DOCTYPE html>
<html>
    <head>
        <title>loui3</title>
        <style>
            #header > h1 {color : red;} /*선택자A > 선택자B*/
            #section > h1 {color : blue;} /*선택자A > 선택자B*/
        </style>
    </head>

    <body>
        <div id="header">
            <h1 class="title">css3</h1>
            <div id="nav">
                <h1>html css script</h1>
            </div>
        </div>
        <div id="section">
            <h1 class="title">css3</h1>
            <p>loui3 html css script</p>
        </div>
    </body>
</html>

출력 내용2

②자손선택자와 table

table 태그 내부에 있는 태그를 자손선택자로 선택을 할경우 아래와 같이 하면 파란색 색깔이 th태그에 적용이 안된다.

<!-- 아래와 같이 하면 안된다 -->
<style>
table > tr > th {
	color: blue;
    }
</style>

 

그 이유는 웹브라우저에서 tbody 태그를 자동으로 추가 해 table > tr > th 가 아닌 table > tbody > tr > th 로 입력해야 된다.

<!--올바른 예시-->
<style>
table > tbody > tr > th {
	color: blue;
    }
</style>

 

4.반응 선택자

반응 선택자는 사용자의 반응으로 생성되는 특정한 상태를 선택한다.

 

1.  :active - 사용자가 마우스로 클린한 태그를 선택한다.

2.  :hover - 사용자가 마우스 커서를 올린 태그를 선택한다.

<!DOCTYPE html>
<html>
    <head>
        <title>loui3</title>
        <style>
            h1:hover {color : red;}
            h1:active { color: blue;}
        </style>
    </head>
    <body>
        <h1>반응</h1>
    </body>
</html>

실행시 반응이란 글자는 검은색이고, 글자 위에 커서를 올리면 빨간색, 클릭하면 파란색으로 변한다.

 

5.상태 선택자

①상태 선택자는 입력 양식의 상태를 설정할때 사용한다.

 

1.  :checked -체크 상태의 iput 태그를 선택한다

2.  :focus -포커스를 맞춘 input 태그를 선택한다.

3.  :enabled -사용 가능한 input 태그를 선택한다.

4.  :disabled -사용 불가능한 input 태그를 선택한다.

<!DOCTYPE html>
<html>
    <head>
        <title>
            loui3
        </title>
        <style>
            input:enabled {background-color:white;}
            input:disabled {background-color: brown;}
            input:focus {background-color: green;}
        </style>
    </head>
    <body>
        <h2>입력 가능</h1>
        <input>
        <h2>입력 불가능</h2>
        <input disabled="disabled">
    </body>
</html>

출력내용3

 

6.구조 선택자

① 특정한 위치에 있는 태그를 선택할 때 사용한다.

1.  :first-child - 첫번째로 등장하는 태그

2.  :last-child -마지막으로 등장하는 태그

3.  :nth-child(수열) -앞에서 수열번째로 등장하는 태그 

4.  :nth-last-child(수열) - 뒤에서 수열번째로 등장하는 태그

<!DOCTYPE html>
<html>
    <head>
        <title>css3</title>
    </head>
    <style>
        ul { overflow: hidden;}
        li {
            list-style: none;
            float:left; padding: 15px;
        }
        li:first-child { border-radius: 10px 0 0 10px; } /*border-radus는 테두리를 둥글게 할때 쓴다고 생각하면 된다.*/
        li:last-child { border-radius: 0 10px 10px 0;}

        li:nth-child(2n) { background-color: aqua;} /*짝수*/
        li:nth-child(2n+1) {background-color: blanchedalmond;} /*홀수*/
    </style>
    <body>
        <ul>
            <li>1</li>
            <li>2</li>
            <li>3</li>
            <li>4</li>
            <li>5</li>
            <li>6</li>
            <li>7</li>
        </ul>
    </body>
</html>

출력 내용4

'WEB > CSS3' 카테고리의 다른 글

04-01. 레이아웃  (0) 2022.12.19
03-02. 위치 속성  (0) 2022.12.18
03-01. 글꼴  (0) 2022.12.16
02-01. CSS 속성들과 배경  (0) 2022.12.15
01-01. CSS 선택자  (0) 2022.12.12