선

CSS :has()를 활용한 “부모 기반 상태 제어(Parent State Control)”로 자바스크립트 의존도 줄이기

· 2025-12-07 (일) 18:22:35 · 658

최근 주요 브라우저에서 :has() 선택자가 안정적으로 지원되면서, 기존에는 자바스크립트로만 가능했던 “부모 요소가 자식의 상태에 따라 스타일을 바꾸는 기능”을 CSS만으로 구현할 수 있게 되었습니다.


이 기능을 활용하면 토글 메뉴, 아코디언, 폼 검증 UI, 선택 상태 표시 등 많은 UI 상호작용을 JS 없이도 처리할 수 있어 퍼블리싱 구조가 훨씬 간결해지고 유지보수 난이도도 크게 줄어듭니다.

 

예를 들어 부모 .item 안에 있는 체크박스가 선택되었을 때 .item 자체에 스타일을 줄 수 있으며, 다음과 같이 구현합니다.

 

.item:has(input:checked) {
  background:#f5f5f5;
  border-color:#333;
}
 

이렇게 하면 체크박스·라디오·input 상태에 따라 부모 컨테이너의 스타일이 즉시 바뀌어, JS 없이도 다양한 상호작용 UI를 표현할 수 있습니다.

현대적인 UI 컴포넌트 제작에서 :has()는 필수 기술로 자리잡고 있으며, 앞으로 더 많은 인터랙션을 CSS만으로 처리하는 트렌드를 이끌고 있습니다.

|
댓글을 작성하시려면 로그인이 필요합니다.

퍼블리셔팁

1,282건

퍼블리싱과 관련된 유용한 정보를 공유하세요. 질문은 상단의 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
CSS 25-12-27 조회 758
CSS 25-12-17 조회 524
CSS 25-12-07 조회 659
CSS 25-11-20 조회 581
CSS 25-11-15 조회 660
기타 25-09-21 조회 722
CSS 25-09-09 조회 1,069
CSS 25-09-05 조회 1,063
CSS 25-08-16 조회 1,117
기타 25-07-23 조회 963
CSS 25-07-17 조회 1,292
CSS 25-06-27 조회 1,195
CSS 25-06-12 조회 1,127
CSS 25-06-09 조회 1,174
CSS 25-06-07 조회 982
25-01-30 조회 1,151
HTML 25-01-23 조회 1,414
CSS 24-10-21 조회 1,321
23-12-10 조회 1,806
HTML 24-02-12 조회 1,252
CSS 24-02-11 조회 1,560
CSS 24-01-28 조회 1,499
HTML 23-11-05 조회 2,233
기타 23-10-21 조회 1,492
CSS 23-09-04 조회 2,071
HTML 23-07-13 조회 1,903
CSS 23-06-14 조회 1,799
23-05-04 조회 4,202
23-05-03 조회 5,959
23-06-01 조회 2,225