그동안 헷갈렸던 px, %, rem, em에 대해, 각 단위들이 어떻게 픽셀(px)로 변환되는지 살펴본다.
See the Pen px, %, em, rem by shinhyejin (@clara-shin) on CodePen.
# 단위변환 (단, x(%)는 px로 변환하려는 현재 값)
- font(%) = 부모의 font-size(px) * x(%)
- lengths(%) = 부모의 lengths(width or height)(px) * x(%)
- font(em) = 부모의 font-size(px) * x(em)
- lengths(em) = 스타일을 지정한 해당요소의 font-size(px) * x(em) 1
- rem = root(html)의 font-size(px) * x(rem)
font(em), lengths(em), rem은 font-size 기준으로 변환!
# 고찰
- html(root)에 font-size를 픽셀단위로 주면 고정값이기 때문에 사용자가 브라우저에서 기본폰트사이즈를 크게 키우고 싶어도 그럴 수 없다.
- rem 단위는 엣지버전과 익스플로러 11버전부터 지원되는 것을 확인하였다. 2
- root element에 폰트사이즈 10px 대신 퍼센트(%)단위를 사용하여 유연하게 사이즈를 변환할 수 있도록 하는 것도 방법이다. (user agent style 인 root의 font-size가 보통 16px이라고 가정(브라우저마다 다름)할 때, font-size:10px와 동일하게 %값으로 변환하다면, 16px:10px = 100%: x%, x=62.5%. 즉 fonc-size: 0.625)
# 함께보면 좋은 참고사이트
'Frontend 👩🏻💻 > HTML&CSS' 카테고리의 다른 글
[Sass] Architect : the 7 - 1 pattern (0) | 2018.07.20 |
---|---|
[css] the problem of setting the font-size to pixels of body element (0) | 2018.07.15 |
[css] Inheritance In CSS (0) | 2018.07.13 |
[css] How UNITS are converted from relative to absolute(px) (0) | 2018.07.13 |
[css] How CSS Works? and what is Specificity? (0) | 2018.07.12 |