[html] 인라인요소(inline-element) vs 블럭요소(block level element )

rimu·2020년 4월 20일
1

HTML의 태그는 크게 블록 요소(block element)와 인라인 요소(inline element)로 나누어 집니다. 이 부분을 명확히 이해하고 있어야 CSS를 사용하는데 어려움이 없습니다.

이 각각의 요소에 적용되는 CSS가 별도로 존재하기 때문에 CSS를 적용해 놓고도 "왜 적용이 되지 않지?" 라는 상황이 발생할 수 있습니다.

예를들면....

인라인 요소는 height가 적용되지 않는다.
인라인 요소는 width가 적용되지 않는다.
블록 요소는 vertical-align 이 적용되지 않는다.
블록 요소는 text-align이 적용되지 않는다.

1. 블록요소 (block element)

1-1. 블록요소 정의

블록 요소는 모든 인라인 요소를 포함할 수 있고 다른 블록 요소도 일부 포함 할 수 있습니다. 그리고 기본적으로 가로폭 전체의 넓이를 가지는 직사각형 형태가 되며 width, height, margin, padding 등을 사용하여 형태를 변형하여 레이아웃을 수정할 수 있습니다. 그리고 블록 요소 다음에는 줄바꿈(line-break)이 이루어 집니다.

display:inline CSS명령어로 블록 요소를 인라인 요소의 속성으로 변경 할 수 있습니다.

div {display:inline}

1-2.HTML5의 블록요소 종류

address, article, aside, audio, blockquote, canvas, dd, div, dl, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, hr, noscript, ol, output, p, pre, section, table, ul, video

2. 인라인요소(inline element)

2-1. 인라인요소 정의

인라인 요소는 항상 블록 요소안에 포함되어 있으며 인라인 요소안에 다른 인라인 요소가 포함될 수 있습니다. 그리고 기본적으로 컨텐츠가 끝나는 지점까지를 넓이로 가지게 됩니다. 그래서 임의로 width, height로 변형을 줄 수가 없습니다. 인라인 요소는 line-height로 줄의 높낮이를 조절할 수 있고 text-align으로 텍스트의 종앙, 좌,우측 정렬을 할 수 있습니다. 그리고 인라인 요소 다음에는 줄바꿈(line-break)이 없고 우측으로 바로 이어서 표시가 됩니다.

display:block CSS명령어로 인라인 요소를 블록 요소의 속성으로 변경 할 수 있습니다.

span {display:block}
/*모든 span태그를 block요소로 변경*/
div {display:inline-block}
/*inline-block으로 인라인 요소와 블록요소의 속성을 모두 갖는 속성으로 변경이 가능*/

2-2. HTML5의 인라인 요소 종류

a, abbr, acronym, b, bdo, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, object, q, samp, small, script, select, span, strong, sub, sup, textarea, tt, var



참고자료

https://junistory.blogspot.com/2017/07/html5.html

profile
Perfectly imperfect ✨

0개의 댓글