하위 선택자, 자식 선택자, 형제 선택자, 인접 형제 선택자

선택자와 선택자를 연결해 적용 대상을 한정시키는 '연결 선택자(Combination Selector)'에 대해 알아 보겠습니다. 연결 선택자에는 하위 선택자, 자식 선택자, 형제 선택자, 인접 형제 선택자가 있습니다.
2 min read

이번 포스팅에서는 선택자와 선택자를 연결해 적용 대상을 한정시키는 '연결 선택자'에 대해 알아 보겠습니다. 연결 선택자에는 하위 선택자, 자식 선택자, 형제 선택자, 인접 형제 선택자가 있습니다.

목차

하위 선택자 (Descendant Selector)

하위 선택자는 특정 요소의 하위에 있는 요소를 모두 선택합니다.

상위 요소와 하위 요소를 공백으로 구분합니다.

예를 들어

div blockquote

<div> 요소의 하위에 있는 <blockqoute> 요소를 선택합니다.

이때 <div> 요소와 <blockqoute> 요소 사이에 요소가 더 있어도 선택이 됩니다.

<div>
  <blockquote> ... </blockquote>
</div>

일 때도 <blockqoute> 요소를 선택하고,

<div>
  <aside>
    <blockquote> ... </blockquote>
  </aside>
</div>

일 때도 <blockqoute> 요소를 선택합니다.

 

자식 선택자 (Child Selector)

자식 선택자는 특정 요소의 자식 요소를 선택합니다.

부모 요소와 자식 요소를 >으로 구분합니다.

예를 들어

div > blockquote

<div> 요소의 자식 요소 중 <blockqoute> 요소를 선택합니다.

이때 주의할 점은 한 단계 아래에 있는 요소만 선택한다는 것입니다.

<div>
  <blockquote> ... </blockquote>
</div>

일 때는 <blockqoute> 요소를 선택하지만

<div>
  <aside>
    <blockquote> ... </blockquote>
  </aside>
</div>

일 때는 <blockqoute> 요소를 선택하지 않습니다.

 

형제 선택자 (Sibling Selector)

형제 선택자는 어떤 요소의 형제 요소를 선택하는 선택자입니다.

두 요소를 ~으로 구분합니다.

예를 들어

h1 ~ p

<h1> 요소의 형제 요소 중 <p> 요소를 선택합니다.

<div>
  <h1></h1>
  <p> ... </p>
  <ul>
    <li></li>
    <li></li>
  </ul>
  <p> ... </p>
</div>

 

인접 형제 선택자 (Adjacent Sibling Selector)

인접 형제 선택자는 어떤 요소의 형제 요소 중 첫번째 요소를 선택합니다.

예를 들어

h1 + p

<h1> 요소의 형제 요소 중 첫번째 <p> 요소만 선택합니다.

<div>
  <h1></h1>
  <p> ... </p>
  <ul>
    <li></li>
    <li></li>
  </ul>
  <p> ... </p>
</div>

 

CSS 선택자 유형

아이디 선택자, 클래스 선택자 전체 선택자, 타입 선택자, 속성 선택자

 

기타 CSS 참조

You may like these posts

  • list-style-type 속성에서 순서 없는 목록 앞에 붙는 불릿의 유형이 단조로운 편입니다. 불릿의 모양을 더 다양하게 사용하고 싶다면 list-style-image 속성을 이용해 불릿을 원하는 이미지로 바꿀 수 있습니다. list-style-image list-style-image로 이미…
  • CSS 박스모델이란 웹 문서의 내용을 박스 형태로 정의하는 방법을 가리킵니다. 이 박스 모델들이 모여 웹 문서를 이루죠. 또한 그 안에는 마진과 패딩, 테두리 등 여러 겹의 박스가 들어 있습니다. 이 개념은 CSS에서 자주 사용 되므로 잘 기억해 두어야 합니다. Box Model HTML 요소는…
  • 포토 앨범 등에서 사진 주변에 그림자를 추가하면 멋진 효과를 만들 수 있습니다. 이런 그리자 효과도 box-shadow 속성을 사용하면 포토샵 같은 프로그램을 사용하지 않고도 나타낼 수 있습니다. 그림자는 이미지 뿐만 아니라 div 전체 등 지정하는 것에 따라 넣을 수 있는데 이때 box-shad…
  • 이번에는 박스 모델의 여백인 마진과 패딩을 조절해보겠습니다. 마진과 패딩은 박스 모델에서 활용도가 높으며 웹 문서에서 이미지나 텍스트 등 여러 요소를 자유롭게 배치할 때 유용합니다. margin 속성 - 요소 주변 여백 설정하기 마진(margin)은 현재 요소 주변의 여백입니다. 따라서 마진을 …
  • 웹 문서에서 여러 요소를 배치하려면 각 요소의 너비를 계산해야 합니다. CSS의 width 속성은 콘텐츠 영역(content area)의 너비를 나타내기 때문에 해당 요소에 적용한 패딩이나 테두리 크기는 따로 계산해서 배치해야 합니다. 이럴 때 box-sizing 속성을 사용하면 콘텐츠 영역의 너비에…
  • 목록을 만들 경우 목록 앞의 불릿이나 번호는 실제 내용의 바깥쪽에 표시됩니다. 하지만 list-style-position 속서을 이용하면 실제 내용이 시작되는 위치에 불릿이나 번호를 표시하기 때문에 결과 화면에는 불릿이나 번호가 좀 더 안쪽으로 들여 써진 듯한 효과가 나타납니다. 이렇게 하면 텍스트 문들들…

Post a Comment