CSS display 속성은 웹페이지 상에서 엘리먼트들의 배치를 결정한다.
실제로 적용할 때 무척 헷갈릴 수 있는 개념이니 정리해본다.
전 후 줄바꿈 없이 한 줄에 다른 엘리먼트들과 나란히 배치된다.
대표적으로 span
a
em
태그 등이 있다.
❗️주의할 점은, width
와 height
속성을 지정해도 무시된다.
해당 태그가 마크업하고 있는 컨텐츠의 크기 만큼만 공간을 차지하도록 되어있기 때문이다. margin
과 padding
속성은 좌우 간격만 반영이 되고, 상하 간격은 반영이 되지 않는다.
엘리먼트 전 후 줄바꿈이 들어가있으며, 혼자 한 줄을 차지하게 된다.
div
p
h1
태그 등이 있다.
❗️inline
엘리먼트와 달리 width
, height
, margin
, padding
속성이 모두 반영 된다.
기본적으로 inline
처럼 전 후 줄바꿈 없이 한 줄에 다른 엘리먼트들과 나란히 배치되지만, block
엘리먼트처럼 width
와 height
, margin
, padding
속성이 모두 반영 된다.
❗️ 내부적으로는 block
엘리먼트의 규칙을 따르면서 외부적으로는 inline
엘리먼트 규칙을 따른다.
button
input
select
태그 등이 있다.
💜
span
엘리먼트는 width
와 height
속성이 적용되지 않지만!
inline-block
으로 속성을 변경 할 경우, 다른 엘리먼트의 옆으로 붙으면서 자체적인 고유의 크기를 가지게 된다.
span {
background: yellow;
display: inline-block;
width: 100px;
height: 100px;
}