CSS - 문법
미래의 웹 디자이너 여러분 환영합니다! 오늘은 CSS 문법의 fascineting 세상으로 뛰어들어 보겠습니다. 여러분의 친절한 이웃 컴퓨터 교사로서, 이 여정을 안내해 드리게 되어 기쁩니다. 처음에는 혼란스러울 수 있지만, 모두가 초보자로 시작하기 때문에 걱정하지 마세요. 단계별로 진행하면, 언제쯤에는 프로처럼 웹 페이지를 스타일링할 수 있을 것입니다!
타입 선택자
기본적인 것으로 시작해 보겠습니다. 타입 선택자는 가장 간단한 형태의 CSS 선택자입니다. 특정 HTML 태그 유형의 모든 요소를 대상으로 합니다.
p {
color: blue;
}
이 예제에서, 웹 페이지의 모든 <p>
(paragraph) 요소는 파란색으로 칠해집니다. 마법의 지팡이를 흔들고 "모든段落, 파란색으로 변하라!"라고 말하는 것과 같습니다!
대상 선택자
대상 선택자는 슈퍼 히어로와 같습니다 - 페이지에 있는 모든 요소를 대상으로 합니다. 별표 (*)로 표현됩니다.
* {
margin: 0;
padding: 0;
}
이 코드 조각은 모든 요소의 여백과 패딩을 초기화합니다. 전체 페이지를 새로운 시작으로 만드는 것과 같습니다!
후손 선택자
후손 선택자는 다른 요소 내에 중첩된 요소를 대상으로 합니다. CSS에 "모든 <a>
태그 중 <p>
태그 내에 있는 것을 찾아라"라고 말하는 것과 같습니다.
p a {
text-decoration: none;
}
이 규칙은段落 내의 모든 링크 (<a>
태그)의 밑줄을 제거합니다.
클래스 선택자
클래스 선택자는 매우 유연합니다. 특정 클래스 속성을 가진 요소에 스타일을 적용할 수 있습니다. 클래스는 HTML 요소의 이름표라고 생각해 보세요.
.highlight {
background-color: yellow;
}
이제 class="highlight"
를 가진 모든 요소는 노란 배경을 가집니다. 특정 요소들에게 노란 배경 클럽의 특별한 VIP 패스를 주는 것과 같습니다!
ID 선택자
ID 선택자는 클래스 선택자와 비슷하지만, 독특한 요소를 위한 것입니다. 각 ID는 페이지당 하나씩만 사용해야 합니다.
#header {
font-size: 24px;
font-weight: bold;
}
이 스타일은 id="header"
를 가진 요소에 적용됩니다. 페이지에 하나의 독특한 요소에 완벽합니다.
자식 선택자
자식 선택자는 후손 선택자보다 더 구체적입니다. 요소의 직접 자식 요소만을 대상으로 합니다.
ul > li {
list-style-type: square;
}
이 규칙은 <ul>
요소의 직접 자식인 <li>
요소의 목록 기호를 사각형으로 변경합니다.
속성 선택자
속성 선택자는 요소의 속성이나 속성 값에 따라 대상을 지정할 수 있습니다. HTML의 X-ray vision을 가지는 것과 같습니다!
input[type="text"] {
border: 1px solid blue;
}
이 규칙은 모든 텍스트 입력 필드에 파란 테두리를 적용합니다.
여러 스타일 규칙
동일한 선택자에 여러 스타일 규칙을 적용할 수 있습니다. 각 규칙은 가독성을 위해 새로운 줄에 작성해야 합니다.
h1 {
color: navy;
font-size: 20px;
text-align: center;
}
여기서 우리는 <h1>
요소에 나비색을 주고, 크기를 20px로 하고, 가운데 정렬을 합니다. 요소의 완전한 변신을 주는 것과 같습니다!
선택자 그룹
때로는 여러 선택자에 동일한 스타일을 적용하고 싶을 때가 있습니다. 반복하지 말고 선택자를 그룹화할 수 있습니다.
h1, h2, h3 {
font-family: Arial, sans-serif;
}
이 규칙은 <h1>
, <h2>
, <h3>
요소 모두에 Arial 폰트(또는 Arial이 사용할 수 없다면 sans-serif 폰트)를 적용합니다.
이제 이 모든 선택자 유형을 편리한 표로 요약해 보겠습니다:
선택자 유형 | 예제 | 설명 |
---|---|---|
타입 | p { } |
지정된 타입의 모든 요소 선택 |
대상 | * { } |
모든 요소 선택 |
후손 | p a { } |
<p> 요소 내의 모든 <a> 요소 선택 |
클래스 | .highlight { } |
지정된 클래스를 가진 모든 요소 선택 |
ID | #header { } |
지정된 ID를 가진 요소 선택 |
자식 | ul > li { } |
<ul> 요소의 직접 자식인 <li> 요소 선택 |
속성 | input[type="text"] { } |
지정된 속성을 가진 요소 선택 |
기억하시자, 연습이 완벽을 이루ります! 이 선택자들을 다양한 방법으로 실험해 보지 마세요. CSS를 더 많이 놀러 보면, 점점 더 직관적이게 느껴질 것입니다.
마무리로 이야기 하나를 나누고 싶습니다. CSS를 처음 배울 때, 마치 야생의 짐승을 길러야 하는 것 같았습니다. 하지만 시간과 연습을 통해 그 짐승은 충실한 동반자가 되었습니다. 이제 아름답게 스타일링된 웹사이트를 보면, "이 비밀을 알고 있구나!"라고 미소 짓게 됩니다.
그러니 계속 노력하세요, 미래의 웹 마법사 여러분! 언제쯤에는 경험 많은 디자이너들도 "와, 이게 어떻게 이루어진 거지?"라고 할 만큼 놀라운 웹 페이지를 만들 수 있을 것입니다. 행복하게 코딩하세요!
Credits: Image by storyset