html, body 요소에 배경색을 추가했다.
예상대로 동작한다.
html은 root element이므로 뷰포트 전체에 적용하고
body는 자식 요소의 컨텐트 크기에 따른다.
html 스타일을 지웠다.
body의 배경이 뷰포트 전체에 적용되었다.
이상하지 않은가?
기본값은 height: auto이기에 자식 요소의 컨텐트 크기에 따라 변경되어야 하는데?
배경색 대신 이미지를 추가할 때도 마찬가지다.
결론
css 만드는 개발자 입장에서 고려해본다면 이렇게 예외를 추가할 수 밖에 없는 상황이 있지 않았나 싶다.
body에서도 뷰포트에 적용하지 않으면 html까지 올라가야하는데 그렇게 까지 해야하나 싶다. 대부분 html 요소에 스타일을 추가하진 않는다. body도 잘 안건드는 판에..
이미지를 뷰포트 중심으로 노출하고 싶다면 background-attchment: fixed를 사용해라
https://developer.mozilla.org/en-US/docs/Web/CSS/background-attachment
background-attachment - CSS: Cascading Style Sheets | MDN
The background-attachment CSS property sets whether a background image's position is fixed within the viewport, or scrolls with its containing block.
developer.mozilla.org
https://www.youtube.com/watch?v=H7teKNwV-Bk
'IT > web' 카테고리의 다른 글
[css] Block Formatting Context (BFC) (0) | 2024.04.22 |
---|---|
[css] :nth-child (0) | 2024.04.22 |
[css] 마진병합 (0) | 2024.04.21 |
[css] width, height 알 수 없는 div, 가로 세로 모두 가운데 정렬하기 (0) | 2024.04.21 |
[css] em, rem (0) | 2024.04.21 |