html, body, h
태그는 default로 margin과 padding 값이 있기에, 원하는 styling을 위해서 값 0을 주고 시작하는 것이 하나의 팁box-sizing: border-box
를 통해 padding값의 변화에 content 사이즈가 왜곡되지 않도록 가능width/height
내에서 padding이 결정됨position: absolute;
로 해결가능 (이후에 배울 내용)block 혹은 inline
값을 바꿀 수 있는 속성display: inline-block;
을 사용vertical-align
은 sibling관계 요소들 중 가장 영역이 큰 값을 기준으로 나란히 정렬하는 기능img
는 inline-block의 속성을 가지기 때문에 vertical-align 적용 가능margin-top
사용 시, parents-children에서 발생하는 margin 병합 현상 (2차원의 특징)top, right, bottom, left
속성 사용이 가능한 지 (3차원의 특징)static은 2차원의 특징을 가지는 속성
모든 html 태그는 position: static;
이 default
margin-top
사용 시, parents-children 간의 margin 병합 현상 발생Otop, right, bottom, left
속성 사용 불가능fixed는 선택 요소를 원하는 위치에 고정시키는 속성
margin-top
사용 시, parents-children 간의 margin 병합 현상 발생Xtop, right, bottom, left
속성 사용 가능 (기준: 브라우저)2차원의 특징과 3차원의 특징 모두 가지고 있음
margin-top
사용 시, parents-children 간의 margin 병합 현상 발생Otop, right, bottom, left
속성 사용 가능 (기준: 최초 위치)3차원의 특징만 가지고 있음
margin-top
사용 시, parents-children 간의 margin 병합 현상 발생Xtop, right, bottom, left
속성 사용 가능 (parents의 position에 따라 다름)역시 css의 position 속성은 복잡하며 익숙해져야 할 것이 되게 많다. 필요한 상황마다 적절한 position 속성을 사용해야 하는 것이 당장은 어려움이 있다.
강사님이 말씀하신 것처럼, 최소 27가지 경우의 수의 다른 점 및 특징을 반복적인 연습으로 눈과 손에 익힌다면, css styling은 훨씬 수월하게 다가올 것 같다. 해결 방법은 반복 연습
이전에 배웠던 강의에서는 position에 대한 자세한 언급없이 필요했던 속성만 간단히 언급만 하고 넘어 갔었기에, 이번 강의는 큰 도움이 되었다.
특히 2차원/3차원으로 내용을 풀어내는 것이 이해하기에 훨씬 도움이 되었다.
정리 및 연습한 코드는 github에 업로드하였다.