Computer >> 컴퓨터 >  >> 프로그래밍 >> CSS

CSS align-items: flex-start로 플렉스 항목을 컨테이너 상단에 정렬하는 방법

CSS 플렉스박스(Flexbox) 레이아웃에서 플렉스 항목들을 컨테이너의 상단(위쪽)에 정렬하고 싶다면, align-items 속성에 flex-start 값을 지정하면 됩니다.

align-items 속성은 교차축(cross axis) 방향으로 플렉스 항목을 배치하는 역할을 하며, 기본값은 stretch입니다. 이 값을 flex-start로 변경하면 모든 항목이 컨테이너의 시작 위치, 즉 세로 레이아웃에서는 맨 위쪽에 붙어서 정렬됩니다.

주요 속성값 비교

  • flex-start: 항목들을 컨테이너 상단에 정렬
  • center: 항목들을 세로 방향 가운데에 정렬
  • flex-end: 항목들을 컨테이너 하단에 정렬
  • stretch: 항목들을 컨테이너 높이만큼 늘려 채움 (기본값)

예제 코드

아래 예제에서는 높이가 300px인 빨간색 플렉스 컨테이너 안에 흰색 항목들이 상단에 정렬되도록 align-items: flex-start를 적용했습니다. 직접 실행해서 결과를 확인해 보세요.

<!DOCTYPE html>
<html>
   <head>
      <style>
         .mycontainer {
            display: flex;
            height: 300px;
            background-color: red;
            align-items: flex-start;
         }
         .mycontainer > div {
            background-color: white;
            text-align: center;
            line-height: 60px;
            font-size: 30px;
            width: 100px;
            margin: 5px;
         }
      </style>
   </head>
   <body>
      <h1>Quiz</h1>
      <div class = "mycontainer">
         <div>Q1</div>
         <div>Q2</div>
         <div>Q3</div>
         <div>Q4</div>
         <div>Q5</div>
      </div>
   </body>
</html>

실행 결과

코드를 실행하면 Q1부터 Q5까지의 항목들이 빨간색 컨테이너 안에서 각각 왼쪽부터 나란히 배치되며, 컨테이너가 300px 높이를 가지고 있음에도 불구하고 모든 항목이 맨 위쪽에 붙어 있는 것을 확인할 수 있습니다. 만약 이 속성을 제거하면 기본값인 stretch가 적용되어 항목들이 컨테이너 전체 높이로 늘어나게 됩니다.