2026, 새로운 도약을 시작합니다.

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

· 1개월 전 · 80

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


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

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

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

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

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

|

댓글 작성

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

로그인하기

퍼블리셔팁

퍼블리싱과 관련된 유용한 정보를 공유하세요.
질문은 상단의 QA에서 해주시기 바랍니다.
번호 분류 제목 글쓴이 날짜 조회
1282 CSS 2주 전 조회 92
1281 CSS 3주 전 조회 81
1280 CSS 1개월 전 조회 81
1279 CSS 1개월 전 조회 189
1278 CSS 1개월 전 조회 189
1277 기타 3개월 전 조회 284
1276 CSS 4개월 전 조회 494
1275 CSS 4개월 전 조회 500
1274 CSS 4개월 전 조회 681
1273 기타 5개월 전 조회 580
1272 CSS 5개월 전 조회 710
1271 CSS 6개월 전 조회 772
1270 CSS 7개월 전 조회 645
1269 CSS 7개월 전 조회 715
1268 CSS 7개월 전 조회 577
1267 11개월 전 조회 759
1266 HTML 11개월 전 조회 1,032
1265 CSS 1년 전 조회 901
1264 2년 전 조회 1,382
1263 HTML 1년 전 조회 829
1262 CSS 1년 전 조회 1,127
1261 CSS 1년 전 조회 1,074
1260 HTML 2년 전 조회 1,598
1259 기타 2년 전 조회 875
1258 CSS 2년 전 조회 1,640
1257 HTML 2년 전 조회 1,513
1256 CSS 2년 전 조회 1,343
1255 2년 전 조회 3,695
1254 2년 전 조회 5,156
1253 2년 전 조회 1,703
🐛 버그신고