/* <한 개의 선택자 목록> */
:is(p) {}
:is(.class) {}
:is(#id) {}

/* <여래 개의 선택자 목록>
   쉼표(,)로 구분합니다.
   쉼표(,) 앞 뒤의 띄어쓰기는 없거나 있거나 동일하게 작동합니다.
*/
:is(p, span) {}
:is(.class, p, #id) {}
:is(#id, .classs) {}
<!-- h4, h5, p 태그들은 서로 다른 요소입니다. -->
<h4>나는 h4 요소입니다.</h4>
<h5>나는 h5 요소입니다.</h5>
<p>나는 p 요소입니다.</p>
/* 
  :is(h5) 선택자는 괄호 안의 선택자 목록과 일치하는 h5 요소에만 스타일을 적용합니다. 
  이 규칙은 h5 요소의 글자 색상을 빨간색으로 설정합니다.
*/
:is(h5) {
    color: red;  /* h5 요소의 글자 색상은 빨간색으로 변경됩니다. */
}

/* 
  :is(h4, p)는 괄호 안의 선택자 목록과 일치하는 h4와 p 요소에 스타일을 적용합니다. 
  이 규칙은 h4와 p 요소의 배경색을 yellowgreen으로 설정합니다.
*/
:is(h4, p) {
    background-color: yellowgreen;  /* h4와 p 요소의 배경색을
                                       yellowgreen으로 설정합니다. */
}
실제 적용된 모습
<h4>나는 h4 요소의 <span>span</span>입니다.</h4>
<h5>나는 h5 요소의 <span>span</span>입니다.</h5>
<p>나는 p 요소의 <span>span</span>입니다.</p>
/* 
  :is(h4, p) span은 괄호 안의 선택자 목록과 일치하는 h4 또는 p 요소 내부의 내부의 자손인 span 태그에 스타일을 적용합니다.
  즉, h4와 p 요소 내의 모든 span 태그에 background-color를 yellowgreen으로 설정합니다.
*/
:is(h4, p) span {
    background-color: yellowgreen;  /* h4와 p 요소 내 span 태그의 배경색을 yellowgreen으로 변경 */
}

/* 
  위 CSS 코드는 아래와 동일합니다.
  h4 span,
  p span {
      background-color: yellowgreen;
  }
*/
실제 적용된 모습
<h4 id="heading">나는 h4 요소입니다.</h4>
<p class="paragraph">나는 p 요소입니다.</p>
/* :is(#heading, p)는 id가 'heading'인 h4 요소와 class가 'paragraph'인 p 요소에 동일한 스타일을 적용합니다. */
:is(#heading, p) {
    background-color: gold;  /* #heading id와 p 요소의 배경색을 gold로 설정 */
}

/* .paragraph는 p 요소의 클래스 선택자로, 배경색을 blue로 설정합니다. */
.paragraph {
    background-color: blue;  /* p 요소의 배경색을 blue로 설정 */
}
실제 적용된 모습
selector:is(::before, ::after) {
    /* ...*/
}
selector::before,
selector::after {
    /* ...*/
}
article h2,
article h3,
article h4,
article h5,
article h6,
section h2,
section h3,
section h4,
section h5,
section h6,
aside h2,
aside h3,
aside h4,
aside h5,
aside h6 {
    color: blue;
}
:is(article, section, aside) :is(h2, h3, h4, h5, h6) {
    color: blue;
}