vw(viewport width)
- 브라우저의 크기에 맞게 반응
- width에 사용
- viewport값의 100분의 1(ex. 전체 width가 1000px 일경우 1vw는 10px가 됨)
- IE9부터 지원
vh(viewport height)
- 브라우저의 크기에 맞게 반응
- height에 사용
- viewport값의 100분의 1(ex. 전체 height가 1000px 일경우 1vh는 10px가 됨)
- IE9부터 지원
* vmin/vmax
- vh,vw 중 더 작은것을 찾아 적용/vh,vw 중 더 큰 것을 찾아 적용
- 실무에서 거의 사용x
calc
- css속성값을 계산식으로 지정
- +, -, *, / 연산자 사용가능
- 중첩 사용 가능
.foo {
--widthA: 100px;
--widthB: calc(var(--widthA) / 2);
--widthC: calc(var(--widthB) / 2);
width: var(--widthC);
}
- vw, vh와 좋은 시너지를 발휘
// 헤더영역이 50px이고, 컨텐츠 영역을 헤더를 제외할 부분으로 하고 싶다면
height: cacl(100vh-50px);
* 위 요소를 사용할 때는 하위 브라우저에서도 반영이 되게 fallback(대체 스타일 시트)를 같이 써주면 좋다.
.org-box {
height: 100%;
height: 100vw;
}
em
- 폰트를 기준으로 비례되는 크기
- 1em은 부모의 폰트 크기로 계산 (ex. 부모폰트의 크기가 10px이면 1em은 10px가 됨)
- 계산이 번거로움
- IE3부터 지원
rem
- 폰트를 기준으로 비례되는 크기
- 1rem은 html 최상위 요소인 root element 폰트 크기와 비례됨
- IE9부터 지원
// html의 폰트사이즈를 62.5%로 지정해둘 경우
// 1rem = 10px가 됨(브라우저가 저장해주는 기본 폰트 사이즈는 16px 이므로)
html {
font-size: 62.5%;
}
'HTML & CSS' 카테고리의 다른 글
getBoundingClientRect (0) | 2022.02.09 |
---|---|
min-content/max-content/fit-content와 auto (0) | 2022.02.08 |
Base 64 (0) | 2022.01.19 |
SVG 적용 시 Dat URIs 방식 (0) | 2022.01.13 |
체크박스(checkbox) 커스터마이징해서 사용해보기 (0) | 2021.10.14 |