`.card .title`, `.card:hover`, `.card .body`처럼 같은 컴포넌트에 속한 선택자를 반복해서 적는 건 Sass/Less 전처리기가 오래 해결해 온 문제였습니다 — 전처리기 없이 순수 CSS만 쓰는 프로젝트는 이 반복을 그대로 감수해야 했습니다.
네이티브 중첩은 `.card { .title { ... } &:hover { ... } }`처럼 규칙 안에 규칙을 쓰게 해 줍니다. `&`는 부모 선택자를 가리키고, 자손 결합자를 생략하면 자동으로 하위 선택자로 취급됩니다. Sass 중첩과 동작이 100% 같지는 않아서(특히 `&` 없이 시작하는 중첩 규칙의 특이도 계산) 마이그레이션할 때 결과 CSS를 한 번 확인하는 게 안전합니다.
기본 지원은 caniuse/MDN baseline을 확인하세요. 미지원 브라우저에서는 여전히 빌드 시점에 Sass/PostCSS로 평평한(flat) CSS로 미리 컴파일하는 것이 표준 대안입니다.
언제 쓰나
전처리기 없이 컴포넌트 스코프 CSS를 짧게 쓰고 싶을 때, 빌드 스텝을 하나 줄이고 싶을 때.