# 선택자 CSS 선택자는 HTML 요소를 선택하여 스타일을 적용하는 데 사용돼. 선택자를 잘 활용하면 코드의 가독성과 유지보수성이 높아져! ## 기본 선택자 (Basic Selectors) ### 전체 선택자 (`*`) * 문서의 모든 요소를 선택 * 초기화 스타일을 적용할 때 유용 ```css * { margin: 0; padding: 0; box-sizing: border-box; } ``` ### 요소 선택자 (`tagname`) * 특정 HTML 태그에 스타일 적용 ```css p { /* 모든
태그에 적용됨 */ color: blue; font-size: 18px; } ``` ### 클래스 선택자 (`.classname`) * 특정 클래스를 가진 요소 선택 ```css .button { /* 에 적용됨 */ background-color: red; color: white; } ``` ### 아이디 선택자 (`#idname`) * 특정 ID를 가진 요소 선택 * ID는 문서 내에서 고유해야 함! ```css #header { /*
만 스타일 적용됨 */ color: red; } ``` ### 후손 선택자 (`A B`) * 자식 + 손자 + 그 이하 모든 후손 요소 선택 ```css div p { /*
요소에 적용 */ font-weight: bold; } ``` ### 인접 형제 선택자 (`A + B`) * 특정 요소 바로 다음에 오는 형제 요소 하나 선택 ```css h1 + p { /*
만 적용됨 */ color: green; } ``` ### 일반 형제 선택자 (`A ~ B`) * 특정 요소 뒤에 나오는 모든 형제 요소 선택 ```css h1 ~ p { /*
에 적용됨 */ font-style: italic; } ``` ## 속성 선택자 (Attribute Selectors) ### 특정 속성이 있는 요소 선택 (`[attr]`) ```css input[required] { /* 필드에 빨간 테두리 적용 */ border: 2px solid red; } ``` ### 특정 값과 일치하는 속성 선택 (`[attr="value"]`) ```css input[type="password"] { /* 필드 배경색 변경 */ background-color: lightgray; } ``` ### 특정 값으로 시작하는 속성 선택 (`[attr^="value"]`) ```css a[href^="https"] { /* href가 "https"로 시작하는 모든 링크 선택 */ color: blue; } ``` ### 특정 값으로 끝나는 속성 선택 (`[attr$="value"]`) ```css img[src$=".jpg"] { /* .jpg로 끝나는 이미지에 둥근 테두리 적용 */ border-radius: 10px; } ``` ### 특정 값이 포함된 속성 선택 (`[attr*="value"]`) ```css div[class*="box"] { /* class에 "box"가 포함된 모든