텍스트의 색상을 설정합니다.
red, blue, green 등#ff5733, #000000 등rgb(255, 0, 0) (빨강)rgba(255, 0, 0, 0.5) (반투명 빨강)p {
color: #ff5733; /* 주황색 */
}
사용할 글꼴을 지정합니다.
'Arial', 'Times New Roman', 'Georgia'serif, sans-serif, monospace, cursive, fantasyh1 {
font-family: 'Georgia', 'Times New Roman', serif; /* 대체 글꼴 지정 */
}
텍스트의 크기를 설정합니다.
pxem, rem, %h2 {
font-size: 1.5rem; /* 루트 em 단위 사용 */
}
텍스트의 두께를 설정합니다.
normal (400), bold (700), bolder, lighter100, 200, 300, 400, 500, 600, 700, 800, 900strong {
font-weight: 600; /* 중간 두께 */
}
텍스트의 스타일을 정의합니다.
normal: 일반 스타일italic: 이탤릭체oblique: 비스듬한 이탤릭체em {
font-style: italic; /* 이탤릭체로 설정 */
}
텍스트의 정렬 방식을 설정합니다.
left: 왼쪽 정렬right: 오른쪽 정렬center: 가운데 정렬justify: 양쪽 정렬p {
text-align: justify; /* 양쪽 정렬 */
}
텍스트에 장식을 추가합니다.
none: 장식 없음underline: 밑줄overline: 윗줄line-through: 취소선blink: 깜박임 (브라우저 지원에 따라 다름)a {
text-decoration: underline; /* 링크에 밑줄 */
}
텍스트의 줄 간격을 설정합니다.
1.5 (상대적 비율)px, em, %p {
line-height: 1.6; /* 줄 간격을 1.6배로 설정 */
}
문자 간의 간격을 설정합니다.
px, em, remh1 {
letter-spacing: 2px; /* 문자 간격을 2픽셀로 설정 */
}
단어 간의 간격을 설정합니다.
px, em, remp {
word-spacing: 4px; /* 단어 간격을 4픽셀로 설정 */
}
박스 모델(Box Model)은 HTML 요소가 웹 페이지에서 어떻게 렌더링되는지를 정의하는 중요한 개념입니다. 모든 HTML 요소는 박스 형태로 구성되어 있습니다.
요소의 실제 내용이 표시되는 영역입니다. 텍스트, 이미지, 비디오 등 다양한 콘텐츠가 이 영역에 포함됩니다.
width: 요소의 너비를 설정합니다.height: 요소의 높이를 설정합니다. ```css
div {
width: 300px; /* 너비 300픽셀 */
height: 200px; /* 높이 200픽셀 */
}
```
콘텐츠와 요소의 경계 사이의 공간을 설정합니다. 이 공간은 배경색이나 배경 이미지와 함께 표시됩니다.
padding: 모든 방향의 패딩을 설정합니다. 예: padding: 10px;padding-top, padding-right, padding-bottom, padding-left: 각 방향의 패딩을 개별적으로 설정합니다. ```css
div {
padding: 20px; /* 모든 방향에 20픽셀 패딩 */
}
```
요소의 경계선으로, 요소와 그 외부 요소 사이를 구분합니다. 경계선의 스타일, 두께, 색상을 설정할 수 있습니다.
border: 모든 방향의 경계를 설정합니다. 예: border: 1px solid black;border-width: 경계의 두께를 설정합니다.border-style: 경계의 스타일을 설정합니다 (예: solid, dashed, dotted).border-color: 경계의 색상을 설정합니다. ```css
div {
border: 2px dashed red; /* 두께 2픽셀, 대쉬 스타일, 빨간색 */
}
```
요소와 주변 요소 사이의 공간을 설정합니다. 이 공간은 배경색이나 배경 이미지와 함께 표시되지 않습니다.
margin: 모든 방향의 마진을 설정합니다. 예: margin: 15px;margin-top, margin-right, margin-bottom, margin-left: 각 방향의 마진을 개별적으로 설정합니다. ```css
div {
margin: 10px; /* 모든 방향에 10픽셀 마진 */
}
```
마진 겹침 현상
CSS에서 두 개 이상의 블록 요소가 인접해 있을 때, 서로의 마진(margin)이 겹치면서 발생하는 현상입니다.
요소의 너비와 높이를 계산하는 방식을 설정합니다. 기본적으로는 content-box 방식이 사용되지만, border-box를 사용하면 패딩과 경계선의 두께를 포함한 총 너비와 높이를 설정할 수 있습니다.
box-sizing: content-box 또는 border-box 값을 사용합니다. ```css
div {
box-sizing: border-box; /* 패딩과 경계를 포함한 총 너비 및 높이 계산 */
width: 300px; /* 전체 너비가 300픽셀이 되도록 설정 */
padding: 20px; /* 20픽셀 패딩 */
border: 5px solid black; /* 5픽셀 경계 */
}
```HTML의 모든 태그는 박스 모델을 가지고 있습니다. 그런데 이를 자세히 들여다보면 박스 모델도 블록, 인라인, 인라인 블록이라는 서로 다른 성격이 존재합니다.
● 블록 성격
블록 성격은 hn, p, div 태그를 사용했을 때 요소의 너비가 콘텐츠 유무와 상관없이 항상 가로 한 줄을 다 차지하는 것을 말합니다. 그래서 hn, p, div 태그를 여러 번 사용하면 무조건 줄 바꿈됩니다.
● 인라인 성격
인라인 성격은 a, span, strong 태그를 사용했을 때 요소의 너비를 콘텐츠 크기만큼만 차지하는 성격을 말합니다. 그래서 a, span, strong 태그를 여러 번 사용할 때 웹 브라우저의 수평 공간이 남아 있으면 한 줄로 배치됩니다.
● 인라인 블록 성격
인라인 블록 성격은 인라인 성격처럼 요소의 너비가 콘텐츠의 크기만큼만 차지하지만, 그 외의 성격은 블록 성격을 가지는 복합적인 성격을 말합니다. 그래서 img 태그를 사용할 때 웹 브라우저의 수평 공간이 남아 있으면 한 줄로 배치됩니다.
display 속성은 HTML 요소가 웹 페이지에서 어떻게 표시될지를 결정하는 CSS 속성입니다. 이 속성은 요소의 박스 모델을 조정하고, 요소의 레이아웃 방식에 큰 영향을 미칩니다.
block
<div>, <h1>, <p>, <section>.block {
display: block;
}
inline
<span>, <a>, <strong>, <em>.inline {
display: inline;
}
inline-block
.inline-block {
display: inline-block;
width: 100px; /* 너비 설정 가능 */
height: 50px; /* 높이 설정 가능 */
}
none
.hidden {
display: none;
}
flex
<div style="display: flex;">와 같이 사용합니다..flex-container {
display: flex;
}
grid
<div style="display: grid;">와 같이 사용합니다..grid-container {
display: grid;
}
배경 이미지는 웹 디자인에서 중요한 요소 중 하나로, 요소에 시각적인 매력을 추가하고 사용자 경험을 개선하는 데 도움을 줍니다.
요소의 배경으로 사용할 이미지를 설정합니다.
url('image.jpg')url('image1.jpg'), url('image2.png')div {
background-image: url('background.jpg'); /* 배경 이미지 설정 */
}
배경 이미지의 반복 방식을 설정합니다.
repeat: 이미지를 가로 및 세로로 반복 (기본값)repeat-x: 이미지를 가로로만 반복repeat-y: 이미지를 세로로만 반복no-repeat: 이미지를 반복하지 않음space: 이미지를 반복하고 남은 공간을 공백으로 나눔round: 이미지를 반복하고, 이미지 크기를 조정하여 남은 공간을 채움div {
background-image: url('pattern.png');
background-repeat: no-repeat; /* 이미지를 반복하지 않음 */
}
배경 이미지의 위치를 설정합니다.
top, right, bottom, left, centerpx, % 단위 사용 가능 (예: 50% 50%, 10px 20px)div {
background-image: url('image.jpg');
background-position: center; /* 중앙 정렬 */
}
배경 이미지의 크기를 설정합니다.
auto: 기본 크기 유지 (기본값)cover: 요소의 배경을 완전히 덮도록 이미지 크기 조정contain: 이미지의 비율을 유지하며 요소 안에 맞게 조정px, % 단위 사용 가능 (예: 100px 100px, 50%)div {
background-image: url('image.jpg');
background-size: cover; /* 요소를 완전히 덮도록 조정 */
}
여러 배경 관련 속성을 한 줄로 설정할 수 있습니다.
background-image, background-repeat, background-position, background-size, background-color 등div {
background: url('image.jpg') no-repeat center/cover fixed; /* 모든 속성 한 줄로 설정 */
}