티스토리 뷰

[Element가 배치되는 방식]


- 렌더링 과정 / 레이아웃 작업

- 일반적으로 위에서 아래로 순서대로 블럭을 이루며 배치됨

- 하지만 웹사이트의 배치는 다양하게 표현 가능해야 하므로, CSS에서 추가적인 속성을 제공

- display 속성 (block / inline / inline-block) 

- position 속성 (static / absolute / relative / fixed)

- float 속성 (left / right)



[display 관련]


- display: block

- display 속성이 block 이거나 inline-block 이면 그 element는 어떠한 영역(블록)을 가지고 쌓임

- 화면에 위에서 아래로 쌓이듯 채워짐

- 대부분 display: block 속성을 기본으로 가지고 있음, display: inline 속성을 명시하여 기본 속성을 변경할 수 있음

- display: inline

- display 속성이 inline 이면 우측으로, 아래쪽으로 빈자리를 차지하며 흐름

- inline 속성의 element는 높이와 너비를 지정해도 반영되지 않음

- span / a / strong 같은 태그들은 display: inline 속성을 기본으로 가지고 있음, display: block 속성을 명시하여 기본 속성을 변경할 수 있음

- display: inline 속성을 기본으로 가진 태그는 많지 않음



[position 관련]


- 기본 틀에서 벗어난 배치를 위해 position 속성을 사용

- 상대적 / 절대적으로 어떤 위치에 element를 배치하는 것이 수월함


- position: static

- 기본 속성. 순서대로 배치됨

- position: absolute

- 상위 element의 static이 아닌 position을 기준점으로 설정

- top / left / right / bottom 으로 설정

- top / left 값을 명시하는 것이 좋음

- position: relative

- 원래 자신이 위치해야 할 곳을 기준으로 이동

- top / left / right / bottom 으로 설정

- position: fixed

- viewport(전체 화면) 좌측, 맨 위를 기준으로 동작, 전체 화면에서의 절대 좌표



[margin]


- 위 / 아래 / 좌 / 우 element와 본인 간의 간격

- margin-top / margin-bottom / margin-left / margin-right

- margin: 25px 0px 10px 3px; : top 25px, right 0px, bottom 10px, left 3px 적용 (시계 방향)

- margin: 30px; : 상하좌우 30px 적용



[float 관련]


- 원래 flow에서 벗어나거나 둥둥 떠다닐 수 있음, 예외적

- block element가 float된 element를 인식하지 못하고 중첩되어 배치됨



[box-model]


- margin / border / padding / content

- margin으로 element 간 간격을 만들어낼 수 있음

- border는 경계선

- padding으로 content와 element의 원래 크기 사이의 간격을 만들어낼 수 있음

- box-shadow 속성으로 그림자(border 밖 테두리)를 만들어줄 수 있음

- box-sizing 속성

- box-sizing: content-box 가 기본

- box-sizing: border-box 로 해줄 수 있음. 원래 크기를 최대한 유지하려고 함



[Element의 크기]


- block element의 크기는 기본적으로 부모의 크기를 가짐



[정리]


- 전체 레이아웃은 float를 잘 사용해서 2/3단 컬럼 배치를 구현

- css-grid / flex 속성 등을 사용할 수 있음


- 특별한 위치에 배치할 때는 position: absolute를 사용, 기준점은 relative로 설정


- 내비게이션 같은 element는 display: inline-block 속성을 사용하여 가로로 배치할 수 있음


- element 안의 텍스트 간격과 다른 element 간 간격은 padding과 margin 속성을 활용하여 위치시킴

'BoostCourse: Web' 카테고리의 다른 글

CSS 기본 스타일 변경하기  (0) 2018.07.09
CSS Selector  (0) 2018.07.09
CSS 상속과 우선순위 결정  (0) 2018.07.09
CSS 선언 방법  (0) 2018.07.09
HTML 태그의 class와 id 속성(attribute)  (0) 2018.07.09
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함