/* <한 개의 형제, 자손 관계 선택자 목록> */
:has(+ p) {}      /* 바로 뒤의 p 요소와 형제 관계를 가지는 모든 요소를 선택 */
h1:has(> span) {} /* span 요소와 부모 관계를 가지는 h1 요소를 선택 */
.a:has(span) {}   /* span 요소와 조상 관계를 가지는 a 클래스 값을 가지는 요소를 선택 */

/* <여래 개의 형제, 자손 관계 선택자 목록>
   쉼표(,)로 구분합니다.
   쉼표(,) 앞 뒤의 띄어쓰기는 없거나 있거나 동일하게 작동합니다.
*/
:has(+ p, > span) {}   /* 바로 뒤의 p 요소와 형제 관계를 가지거나, 
                          span 요소와 부모 관계를 가지는 모든 요소를 선택 */

h1:has(+ p, span) {}   /* 바로 뒤의 p 요소와 형제 관계를 가지거나,
                          span 요소와 조상 관계를 가지는 h1 요소를 선택 */
                          
.a:has(~ span, + p) {} /* 이후에 위치한 span 요소와 형제 관계를 가지거나,
                          바로 뒤의 p 요소와 형제 관계를 가지는 a 클래스 값을 가지는 요소를 선택 */
/* 예시: div 요소의 자손 p 요소를 선택 */
div p {
    color: red;
}
/* 예시: div 요소의 직계 자식 p 요소를 선택 */
div > p {
    color: blue;
}
/* 예시: div 요소 이후에 위치한 형제인 모든 p 요소를 선택 */
div ~ p {
    color: blue;
}
/* 예시: div 요소 바로 뒤에 위치한 형제인 p 요소를 선택 */
div + p {
    color: blue;
}
<h4>h4 제목 요소 입니다.</h4>
<p>p 요소입니다.</p>
<h5>h6 제목 요소 입니다.</h5>
<p>요소입니다.</p>  
/* 바로 뒤의 p 요소와 형제 관계를 가지는 h4 요소를 선택 */
h4:has(+ p) {
    background-color: yellowgreen;
}
실제 적용된 모습
<fieldset>
    <legend>관심이 있는 웹 언어를 선택하세요.</legend>
    <div class="control-unit">
        <input type="radio" id="html" name="web-lang">
        <label for="html">HTML</label>
    </div>
    <div class="control-unit">
        <input type="radio" id="css" name="web-lang" checked>
        <label for="css">CSS</label>
    </div>
    <div class="control-unit">
        <input type="radio" id="js" name="web-lang">
        <label for="js">JavaScript</label>
    </div>
</fieldset>
fieldset {
    border: none;
}
.control-unit {
    padding: 0.5em;
    border: 1px solid silver;
    border-radius: 6px;
}

/* 바로 뒤의 .control-unit 요소와 형제 관계를 가지는 .control-unit 요소를 선택 */
/* .control-unit를 기준으로 이전에 마크업한 형제 요소를 타깃으로 선택 */
.control-unit:has(+ .control-unit) {
    margin-bottom: 0.5em;
}

/* :checked 상태인 요소와 조상 관계를 가지는 .control-unit 요소를 선택 */
/* :checked를 기준으로 조상 요소를 타깃으로 선택 */
.control-unit:has(:checked) { /* :checked 앞에 띄어쓰기는 없거나(:checked) 있거나( :checked) 동일하게 작동합니다. */
    border-color: red;
    accent-color: red;
}
실제 적용된 모습
<section class="container">
    <h4 id="heading">나는 h4 요소입니다.</h4>
    <p>나는 p 요소입니다.</p>
</section>
section:has(#heading, p) {
    background-color: gold;
}
.container {
    background-color: blue;
}
실제 적용된 모습