코드 그라데이션

11. 연결 선택자 본문

Front/Mega-CSS

11. 연결 선택자

완벽한 장면 2023. 5. 15. 22:14

연결 선택자

  • 둘 이상의 선택자를 연결해서 스타일이 적용될 요소가 어느 부분인지 지정하는 역할을 수행

 

하위 요소

  • 특정 요소를 기준으로 그 안에 포함된 요소를 의미

자식 요소

  • 현재 요소를 기준으로 바로 한 단계 아래 요소

손자 요소

  • 자식 요소의 한 단계 아래 요소

 

* 연결 선택자의 종류와 설명

연결 선택자

 

1) 하위 선택자 (= 자손 선택자)

  • 부모 요소에 포함된 하위 요소를 모두 선택
  • 자식 요소 뿐만 아니라, 손자 요소, 손자의 손자요소 등 모든 요소들까지...
  • 상위 요소와 하위 요소를 공백으로 구분한다.

기본 사용 형태

 

예제 - 모든 하위요소에 글자색 빨간색으로 지정

<!DOCTYPE html>
<html lang="ko">
<head>
  <meta charset="UTF-8">
  <title>고급 선택자 모든 하위요소</title>
  <style>
    body {
      background-color:#eee;
    }
    section {
      width:600px;
      margin:20px auto;
    }
    p {
      width:500px;
      padding:10px;
      background-color:#fff;
      border:1px solid #ccc;
      line-height:2;
    }
   section p {  /* section 요소의 모든 하위 p 요소에 적용 */
      color:red;   /* 글자색을 빨간색으로 */
    }
  </style>
</head>
<body>
  <section>
    <h1>aaaaaaaaaaaaaaa</h1>
    <p>bbbbbbbbbbbbbbbbbbb</p>
    <div>
      <p>ccccccccccccccccccccc</p>
      <p>dddddddddddddddddd</p>
    </div>
  </section>   
</body>
</html>

 

 

실행 결과

 

 

 

2) 자식 선택자 

  • 하위 선택자와 다르게 자식 요소에만 스타일을 적용
  • 두 요소 사이에 > 기호를 표시해 부모 요소와 자식 요소를 구분한다.

 

예제 - 자식 선택자

<!DOCTYPE html>
<html lang="ko">
<head>
  <meta charset="UTF-8">
  <title>자식 선택자에게만 적용</title>
  <style>
    body {
      background-color:#eee;
    }
    section {
      width:600px;
      margin:20px auto;
    }
    p {
      width:500px;
      padding:10px;
      background-color:#fff;
      border:1px solid #ccc;
      line-height:2;
    }
   section > p {  /* section 요소에 포함된 p 요소 중에서 자식에게만 적용 */
      color:red;   /* 글자색을 빨간색으로 */
    }
  </style>
</head>
<body>
  <section>
    <h1>aaaaaaaaaaaaaaa</h1>
    <p>bbbbbbbbbbbbbbbbbbb</p>
    <div>
      <p>ccccccccccccccccccccc</p>
      <p>dddddddddddddddddd</p>
    </div>
  </section>   
</body>
</html>

 

실행 결과

 

 

 

3) 인접 형제 선택자 

  • 형제 요소 중에서 첫 번째 동생 요소만 선택하는 것.
  • 요소1 과 요소2 사이에 + 로 표기
  • 요소1 과 요소2 는 같은 레벨이면서 요소1 이후 가장 먼저 오는 요소 2를 선택

ex. h1 요소와 형제인 p 요소 중에서 첫 번째 p 요소만 선택하여 글자를 파란색으로 적용하는 방법

 

예제 - h1 요소와 형제인 p 요소 중에서 첫 번째 p 요소의 배경색과 글자색을 바꾸기

 

실행 결과

 

 

4) 형제 선택자 

  • 모든 형제 요소에 적용
  • 두 요소 사이에 ~ 기호를 표시해 요소1 과 요소2 를 모두 선택한다

ex. h1 요소 뒤에 오는 모든 형제 p 요소의 글자를 파란색으로 적용하는 방법

 

예제 - h1요소의 형제인 p요소를 모두 선택해 모든 형제 요소의 글자색과 배경색 바꾸기

<!DOCTYPE html>
<html lang="ko">
<head>
  <meta charset="UTF-8">
  <title>형제 선택자</title>
  <style>
    body {
      background-color:#eee;
    }
    section {
      width:600px;
      margin:20px auto;
    }
    p {
      width:500px;
      padding:10px;
      background-color:#fff;
      border:1px solid #ccc;
      line-height:2;
    }
   h1 ~ p {  /* h1 요소의 형제인 p 요소 모두에 적용 */
      background-color: yellow;
      color:red;   /* 글자색을 빨간색으로 */
    }
  </style>
</head>
<body>
  <section>
    <h1>aaaaaaaaaaaaaaa</h1>
    <p>bbbbbbbbbbbbbbbbbbb</p>
    <p>eeeeeeeeeeeeeeeeeee</p>
    <p>fffffffffffffffffff</p>
    <div>
      <p>ccccccccccccccccccccc</p>
      <p>dddddddddddddddddd</p>
    </div>
  </section>   
</body>
</html>

 

실행 결과

728x90

'Front > Mega-CSS' 카테고리의 다른 글

13. 가상 클래스와 가상 요소  (0) 2023.05.17
12. 속성 선택자  (0) 2023.05.16
10. 색 그라데이션  (0) 2023.05.14
9. 배경색과 배경 이미지  (0) 2023.05.14
<중요> 8. 웹 문서 레이아웃, 위치  (0) 2023.05.14
Comments