박스 모델은 주로 레이아웃을 적용하기 위해 사용되는 개념이다. HTML에서 표현되는 컨텐츠들은 모두 사각형의 영역으로 표현될 수 있다. 그래서 박스모델이라 표현한다. 레이아웃을 적용하기 위해서는 어떤 컨텐츠를 하나의 블록으로 묶고 이 블록으로 표현된 컨텐츠들의 위치를 어떻게 지정해야 하는지가 명확해야 할 것이다. 박스모델이라는 것은 특별한 CSS의 속성을 적용하겠다는 의미가 아니라 <div></div>태그나 <span></span> <p></p>태그를 이용해서 한꺼번에 위치를 변경하고 싶은 컨텐츠를 묶어서 표현하겠다는 의미이다

다만 이 사각형의 영역 안에 정의된 컨텐츠들의 여백이나 간격들을 조절할 수 있어야 겠다. 또 컨텐츠에 테두리선도 표현할 수 있어야 할 것이다.

 

박스모델 관련 속성

선의 모양 : border-style

아래와 같이 정의하고  CSS속성을 정의한다

 

 

실행하면 다음과 같은 결과가 나타난다.

 

선의 굵기 : border-width

 

선의 색상 : border-color

 

선과 컨텐츠 사이의 간격 : padding

padding 속성을 정의하면 컨텐츠와 선 사이의 위, 아래, 왼쪽, 오른쪽 간격을 동일하게 적용하겠다는 의미이며 각각 정의하고 싶은 경우 padding-left, padding-right, padding-top, padding-bottom을 정의하면 된다

 

 

컨텐츠 주위 여백 : margin

padding과 마찬가지로 margin으로만 정의하면 컨텐츠 주위의 위, 아래, 왼쪽, 오른쪽 여백을 동일하게 적용하겠다는 의미이며 각각 정의하고 싶은 경우 margin-left, margin-right, margin-top, margin-bottom을 각각 정의하면 된다

 

다음과 같이 CSS속성을 적용할 컨텐츠를 정의한다. “border-style”을 테스트한 문서의 위쯤에 정의하면 된다.

 

CSS를 다음과 같이 정의한다.

 

실행하면 다음과 같은 결과가 나타난다. 그런데 분명 “red” 박스와 “blue”박스모두 “margin”속성을 각각 10px, 20px씩 적용했기 때문에 총 30px만큼의 여백이 적용되어야 하는데 현재 30px의 여백이 적용되어 있지 않다. 이렇게 CSS속성이 겹치는 경우 적용이 안될 수 있기 때문에 주의해야 한다.

' > CSS' 카테고리의 다른 글

body의 여백 없애기  (0) 2019.07.12
문자열 관련 속성  (0) 2019.07.04
기본 속성 적용  (0) 2019.07.03
CSS의 선택자  (0) 2019.07.03
CSS적용 방법  (0) 2019.07.03

+ Recent posts