CSS

CSS display Property

lshjju 2026. 2. 20. 15:05

이아웃 시스템의 뼈대를 이루는 CSS display 속성에 대해 알아보겠습니다.

display 속성은 웹 페이지의 모든 요소가 화면에서 어떻게 보이고, 주변 요소들과 어떻게 배치될지를 결정하는 가장 기초적이면서도 중요한 속성입니다.


1. 주요 속성값 (기본 레이아웃)

가장 빈번하게 사용되는 네 가지 기본값입니다.

  • block: 항상 새로운 줄에서 시작하며, 가능한 전체 너비를 차지합니다.
    • 예: <div>, <h1>, <p>, <ul>
  • inline: 새로운 줄에서 시작하지 않고 콘텐츠만큼의 너비만 차지합니다.
    • 주의: width, height, 상하 margin 설정이 적용되지 않습니다.
    • 예: <span>, <a>, <img>
  • inline-block: inline처럼 한 줄에 나란히 배치되지만, block처럼 width, height 및 모든 margin 설정을 가질 수 있습니다.
  • none: 요소를 화면에서 완전히 제거합니다. 공간조차 차지하지 않습니다. (자바스크립트로 요소를 숨겼다 나타낼 때 자주 사용)

2. 모던 레이아웃 속성 (강력한 배치)

현대 웹 디자인의 핵심인 복잡한 배치를 위한 속성입니다.

  • flex: 요소를 플렉스 컨테이너로 만듭니다. 1차원(행 또는 열) 정렬에 최적화되어 있습니다.
  • grid: 요소를 그리드 컨테이너로 만듭니다. 2차원(행과 열 모두) 격자 형태의 레이아웃을 짜기에 완벽합니다.

🖥️ 실전 예제 코드: "성격 변화시키기"

HTML 태그 고유의 성격을 CSS display 속성으로 바꿀 수 있습니다.

HTML
 
<style>
  /* 원래 block인 li를 한 줄로 나란히 배치 */
  nav li {
    display: inline-block;
    margin-right: 20px;
    background-color: #f0f0f0;
    padding: 10px;
  }

  /* 원래 inline인 span에 크기 부여하기 */
  .box-span {
    display: block; /* block으로 바꾸면 너비와 높이가 적용됨 */
    width: 100px;
    height: 50px;
    background-color: orange;
  }

  /* 요소를 아예 숨기기 */
  .hidden {
    display: none;
  }
</style>

<nav>
  <ul>
    <li>Home</li>
    <li>About</li>
    <li>Contact</li>
  </ul>
</nav>

<span class="box-span">Box</span>
<div class="hidden">이 글자는 보이지 않습니다.</div>

📋 display 속성 요약표

줄 바꿈 여부 크기 설정(width/height) 비고
block 있음 가능 가로 전체를 차지함
inline 없음 불가능 텍스트 흐름 속에 위치함
inline-block 없음 가능 inline과 block의 장점 결합
flex 설정에 따름 가능 유연한 박스 모델 (1차원)
grid 설정에 따름 가능 격자 시스템 (2차원)
none - - 렌더링 자체를 하지 않음

학습 정리

  • **display: none**은 요소가 아예 사라지지만, **visibility: hidden**은 요소는 안 보여도 그 공간은 그대로 남겨둡니다.
  • 리스트(li)로 가로 메뉴를 만들 때 과거에는 inline-block을 썼지만, 현재는 **display: flex**를 사용하는 것이 표준입니다.
  • inline 요소에 padding을 줄 경우 배경색은 칠해지지만 주변 레이아웃을 밀어내지는 못하므로 주의해야 합니다.

요소의 존재 방식과 배치를 결정하는 display 속성을 정복하셨습니다!

'CSS' 카테고리의 다른 글

CSS display: inline-block  (0) 2026.02.20
CSS Float property  (0) 2026.02.20
CSS Backgrounds property  (0) 2026.02.20
CSS Gradients property  (0) 2026.02.20
Media query  (0) 2026.02.20