Post

CSS 튜토리얼)Part2. CSS 기본문법 - 값

안녕하세요, 여러분!

Part2. 값 기초입니다 CSS 에 다양한 길이 및 크기에 대해 바로 알아보도록 할게요!

길이 및 크기


📍px (픽셀):

화면에 표시되는 실제 픽셀 단위입니다.
절대적인 크기를 나타내며, 가장 기본적인 길이 단위입니다.


CSS 픽셀과 물리적 픽셀

물리적 픽셀: 디스플레이 장치의 가장 작은 물리적 단위로, 스크린에 정보를 표현하는 실제 점입니다.

CSS 픽셀: 사용자가 웹 콘텐츠를 보는 상황을 고려하여 조정된 논리적 단위입니다. 사용자의 장치가 어떤 해상도를 가지고 있든지 간에, CSS 픽셀을 사용하여 스타일을 지정하면 웹 개발자는 보다 일관된 시각적 경험을 제공할 수 있습니다.

  • 예시
1
2
3
4
p {
    font-size: 16px;  // 텍스트의 크기를 16 CSS 픽셀로 설정
    margin: 10px;  // 문단의 마진을 모든 방향으로 10 CSS 픽셀로 설정
}


CSS 픽셀은 웹 디자인에서 광범위하게 사용되며, 다양한 디스플레이 환경에서 웹 페이지의 요소들이 일관되게 표현되도록 돕습니다.
따라서, 웹 개발자들은 CSS 픽셀을 사용하여 요소의 크기, 패딩, 마진, 테두리 등을 지정할 수 있습니다.



📍em:

em은 글꼴 크기에 대한 상대적인 단위입니다.
이 단위를 사용하면, 설정된 요소의 글꼴 크기가 부모 요소의 글꼴 크기에 기반하여 결정됩니다.


💡 ‘em’ 단위를 이해하기 쉬운 방법:

부모 요소의 글꼴 크기가 16px라고 해봅시다! 그러면, 이 부모 요소 내의 모든 em 값은 16px을 기준으로 계산됩니다. 예를 들어, 자식 요소에 font-size: 1.5em;이라고 설정하면, 그 글꼴 크기는 부모의 글꼴 크기 16px의 1.5배가 되어 24px이 됩니다.


  • 예시
    글꼴 크기: 부모의 글꼴 크기에 따라 자동으로 조절됩니다
1
2
3
4
5
6
.parent {
    font-size: 20px;  // 부모 글꼴 크기 설정
}
.child {
    font-size: 1.2em;  // 20px * 1.2 = 24px
}


  • 예시
    패딩과 마진: 이것도 부모 글꼴 크기에 비례해서 조절됩니다.
1
2
3
4
.child {
    padding: 0.5em;  // 20px * 0.5 = 10px
    margin: 1em;  // 20px * 1 = 20px
}


em의 장점

장점설명
조절 용이부모 요소의 글꼴 크기를 변경함으로써, 자식 요소의 글꼴 크기, 패딩, 마진 등을 쉽게 조절할 수 있습니다.
반응형 디자인 적합사용자의 화면 크기나 설정에 따라 요소의 크기가 자동으로 조절되므로, 반응형 디자인에 매우 적합합니다.
일관성 유지웹 페이지의 다양한 부분에서 글꼴 크기와 레이아웃 간격을 부모 요소에 의존하여 일관성 있게 유지할 수 있습니다.



📍rem:

rem 단위는 문서의 기본 글꼴 크기를 기준으로 크기를 측정하는 방법입니다. 이 기준 글꼴 크기는 웹 페이지의 최상위 요소인 <html> 태그에서 설정됩니다.


rem 단위의 기본 개념:

“Root EM” 의 약자입니다. 여기서 “Root”는 문서의 루트, 즉 <html> 요소를 의미합니다.
웹 페이지에서 글꼴 크기, 패딩, 마진, 너비 등을 설정할 때, 이 rem 단위를 사용하면 모든 것이 웹 페이지의 기본 글꼴 크기에 따라 조정됩니다.


⚡️ 간단한 예: 만약 <html> 요소의 글꼴 크기가 16px로 설정되어 있다면, 1rem은 16px과 같습니다. 2rem은 32px이 됩니다 (16px * 2). 따라서, 만약 <html>의 글꼴 크기를 변경하기만 해도, rem 단위를 사용하는 모든 요소의 크기가 비례적으로 조정됩니다.


rem 단위의 특징:

<span style=color:red>글로벌 스케일링:</span> rem 단위는 전체 문서의 기준 크기(<html> 태그의 font-size)를 변경함으로써 전체 레이아웃의 크기 조정이 가능합니다.
이는 전체 사이트의 글꼴 크기, 간격, 크기 등을 일관되게 조절할 수 있게 해줍니다.

<span style=color:red>일관성:</span> rem을 사용하면 중첩된 요소들의 스타일을 일관되게 유지할 수 있습니다.
em의 경우 중첩 깊이에 따라 값이 달라질 수 있지만, rem은 항상 같은 기준에서 측정되기 때문입니다.
<span style=color:red>유지보수 용이성:</span> 스타일 시트 전체에서 기준 크기를 한 곳에서 조정할 수 있으므로, 디자인 변경이나 반응형 디자인 적용 시 유지보수가 용이합니다.


‘rem’ 의 장점

장점설명
일관성rem 단위를 사용하면 전체 웹 페이지에서 요소들의 크기가 일관되게 유지됩니다. 이로 인해 디자인의 통일성이 보장됩니다.
조정 용이<html> 요소의 글꼴 크기를 변경함으로써 전체 페이지의 크기 비율을 쉽게 조절할 수 있습니다. 이는 모든 rem 기반 크기가 이에 응답하여 조절되기 때문입니다.
반응형 디자인 적합rem은 반응형 디자인 구현에 특히 유용합니다. 미디어 쿼리 내에서 기준 글꼴 크기를 조정하면 관련 요소들의 크기가 자동으로 조정되어 다양한 화면 크기에 적응합니다.




📍% (백분율):

백분율(%), 즉 퍼센트 값은 요소의 크기, 패딩, 마진 등을 상대적으로 설정할 때 사용되는 단위입니다. 백분율 값은 대개 부모 요소의 크기에 대한 비율로 계산됩니다.
이렇게 상대적인 측정 방법은 특히 반응형 웹 디자인을 구현할 때 매우 유용하며, 다양한 화면 크기와 디바이스에서 일관된 레이아웃과 스타일을 유지하는 데 도움을 줍니다.


백분율 단위의 기본 작동 방식

백분율 값은 주로 다음과 같은 속성에 사용됩니다:

너비 및 높이: 요소의 width와 height 속성을 부모 요소의 너비 및 높이에 대한 백분율로 설정할 수 있습니다.

패딩 및 마진: padding과 margin을 부모 요소의 너비에 대한 백분율로 설정합니다 (상하 패딩과 마진도 부모의 너비를 기준으로 합니다).

폰트 크기: 요소의 font-size를 상위 요소의 글꼴 크기에 대한 백분율로 설정할 수 있습니다.


백분율 사용 예시

  1. 너비 설정
1
2
3
.container {
    width: 80%;  // 부모 요소의 너비의 80%를 차지
}


  1. 마진 및 패딩 설정
1
2
3
4
.box {
    margin: 5%;  // 모든 방향의 마진을 부모 너비의 5%로 설정
    padding: 10%;  // 모든 방향의 패딩을 부모 너비의 10%로 설정
}


  1. 텍스트 크기 설정
1
2
3
.text {
    font-size: 150%;  // 부모 글꼴 크기의 150%로 설정
}


백분율의 장점

장점설명
유연성백분율 단위는 웹 페이지의 요소들이 부모 요소 및 뷰포트 크기에 따라 동적으로 조절되도록 합니다. 이는 다양한 디스플레이 환경에 적합한 디자인을 만드는 데 도움을 줍니다.
반응형 디자인 적합백분율 단위를 사용하면 웹 페이지의 레이아웃이 뷰포트의 크기 변화에 따라 자동으로 조절되므로, 반응형 웹 디자인에 매우 적합합니다.
일관성백분율을 여러 요소에 적용함으로써, 다양한 화면 크기에서도 웹 페이지의 비율과 레이아웃을 일관되게 유지할 수 있습니다.



📍vw/vh (뷰포트의 너비/높이의 백분율):

vw는 뷰포트 너비의 1%를, vh는 뷰포트 높이의 1%를 나타냅니다.
이를 통해 뷰포트 크기에 반응하는 레이아웃을 구성할 수 있습니다.


vw (Viewport Width)

  • 1vw는 사용자 화면(뷰포트)의 너비의 1%를 나타냅니다.
  • 예를 들어, 화면의 너비가 1000픽셀이라면, 1vw는 10픽셀과 같습니다.


vh (Viewport Height)

  • 1vh는 사용자 화면(뷰포트)의 높이의 1%를 나타냅니다.
  • 화면의 높이가 500픽셀이라면, 1vh는 5픽셀과 같습니다.


간단한 사용 예시

  1. 너비와 높이 설정: 웹페이지의 배너 또는 섹션의 너비를 화면의 50%로 설정하고 싶다면, CSS에서 이렇게 쓸 수 있습니다:
1
2
3
.banner {
    width: 50vw;  // 화면 너비의 50%
}

1-1. 높이를 화면 높이의 30%로 설정하고 싶다면:

1
2
3
4
.section {
    height: 30vh;  // 화면 높이의 30%
}


  1. 폰트 크기 설정:

글자 크기를 화면 너비에 맞추어 동적으로 조절하고 싶을 때:

1
2
3
h1 {
    font-size: 3vw;  // 화면 너비의 3%
}


장점

장점설명
동적 크기 조절vwvh 단위를 사용하면 화면의 크기가 변할 때마다 요소의 크기도 자동으로 조정되어, 다양한 디바이스에서도 일관된 디자인을 유지할 수 있습니다.
반응형 디자인 적합화면 크기에 따라 내용이 자동으로 조정되므로, 반응형 웹 디자인을 구현하기에 매우 적합합니다.
간편한 레이아웃 조정화면 크기의 백분율을 기준으로 요소의 크기를 설정함으로써, 레이아웃의 비율을 쉽게 유지하면서 크기를 조절할 수 있습니다.

This post is licensed under CC BY 4.0 by the author.