CodeGym /자바 코스 /Frontend SELF KO /Grid 컨테이너 정렬

Grid 컨테이너 정렬

Frontend SELF KO
레벨 28 , 레슨 2
사용 가능

8.1 justify-content 속성

CSS Grid Layout는 그리드 컨테이너를 사용 가능한 공간 내에서 정렬하는 강력한 도구를 제공해. justify-content, align-content, place-content 속성들은 컨테이너 내 행과 열을 정렬하여 레이아웃을 만들 때 유연성과 정확성을 보장해.

justify-content 속성은 컨테이너 내에서 전체 그리드의 수평 정렬을 관리해. 이 속성은 컨테이너의 크기가 그리드의 필요한 너비보다 클 때 유용해.

구문:

    
      .grid-container {
        display: grid;
        justify-content: value;
      }
    
  

어디서: value는 다음 값을 가질 수 있어:

  • start: 그리드를 컨테이너의 시작 위치로 정렬해
  • end: 그리드를 컨테이너의 끝 위치로 정렬해
  • center: 그리드를 컨테이너의 가운데로 정렬해
  • stretch: 그리드를 늘려서 컨테이너 전체를 채워
  • space-around: 각 요소 주변에 동일한 공간을 둬
  • space-between: 요소들 사이에 동일한 공간을 둬
  • space-evenly: 요소와 컨테이너 가장자리 사이에 동일한 공간을 둬

예제 1: 컨테이너 시작점에 정렬하기

이 예제에서는 모든 내용이 컨테이너의 왼쪽 가장자리에 정렬될 거야:

CSS
    
      .grid-container {
        display: grid;
        grid-template-columns: repeat(3, 100px);
        justify-content: start; /* 내용을 컨테이너의 왼쪽 가장자리에 정렬해 */
      }
    
  

예제 2: 내용 중앙 정렬하기

이 예제에서는 모든 내용이 컨테이너 내에서 중앙에 위치할 거야:

CSS
    
      .grid-container {
        display: grid;
        grid-template-columns: repeat(3, 100px);
        justify-content: center; /* 컨테이너 내에서 내용을 중앙에 위치시켜 */
      }
    
  

8.2 align-content 속성

align-content 속성은 grid 컨테이너 내 수직 축을 따라 그리드 내용을 어떻게 정렬할지를 결정해. 그리드가 사용 가능한 수직 공간을 다 채우지 않을 때 유용해.

구문:

    
      .grid-container {
        align-content: value;
      }
    
  

어디서: value는 수직 정렬을 결정하는 값이야. 가능한 값은:

  • start: 내용을 컨테이너의 시작 위치로 정렬해
  • end: 내용을 컨테이너의 끝 위치로 정렬해
  • center: 컨테이너 내에서 내용을 가운데로 정렬해
  • space-between: 요소들 사이에 동일한 거리를 둬
  • space-around: 각 요소 주변에 동일한 거리를 둬
  • space-evenly: 요소와 컨테이너 가장자리 사이에 동일한 거리를 둬
  • stretch (기본값): 내용을 늘려서 모든 사용 가능한 공간을 다 채워

예제 1: 컨테이너 시작점에 정렬하기

이 예제에서는 모든 내용이 컨테이너의 위쪽 가장자리에 정렬될 거야:

CSS
    
      .grid-container {
        display: grid;
        grid-template-rows: repeat(3, 100px);
        align-content: start; /* 내용을 컨테이너의 위쪽 가장자리에 정렬해 */
      }
    
  

예제 2: 내용 중앙 정렬하기

이 예제에서는 모든 내용이 컨테이너 내에서 중앙에 위치할 거야:

CSS
    
      .grid-container {
        display: grid;
        grid-template-rows: repeat(3, 100px);
        align-content: center; /* 컨테이너 내에서 내용을 중앙에 위치시켜 */
      }
    
  

8.3 place-content 속성

place-content 속성은 justify-contentalign-content 값을 동시에 설정할 수 있는 축약형이야.

구문:

    
      .grid-container {
        place-content: justify-value align-value;
      }
    
  

어디서:

  • justify-value: 수평 정렬을 위한 값 (justify-content)
  • align-value: 수직 정렬을 위한 값 (align-content)

예제 1: 수평 및 수직 중앙 정렬하기

이 예제에서는 모든 내용이 컨테이너 내에서 수평 및 수직으로 중앙에 위치할 거야:

CSS
    
      .grid-container {
        display: grid;
        grid-template-columns: repeat(3, 100px);
        grid-template-rows: repeat(3, 100px);
        place-content: center center; /* 수평 및 수직으로 내용을 중앙에 위치시켜 */
      }
    
  

예제 2: 가로로 늘리고 위쪽 가장자리에 정렬하기

이 예제에서는 내용이 컨테이너의 너비로 늘어나고 위쪽 가장자리에 정렬될 거야:

CSS
    
      .grid-container {
        display: grid;
        grid-template-columns: repeat(3, 100px);
        grid-template-rows: repeat(3, 100px);
        place-content: stretch start; /* 내용을 가로로 늘리고 위쪽 가장자리에 정렬해 */
      }
    
  

8.4 전체 구현 예제

CSS
    
      .grid-container {
        display: grid;
        grid-template-columns: repeat(3, 100px); /* 고정 너비 세 개의 열 */
        grid-template-rows: repeat(3, 100px); /* 고정 높이 세 개의 행 */
        gap: 10px;
        place-content: center center; /* 수평 및 수직으로 내용을 중앙에 위치시켜 */
      }

      .grid-item {
        background-color: #3498db;
        color: white;
        padding: 20px;
        text-align: center;
        border: 1px solid #fff;
      }
    
  
HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Grid 컨테이너 정렬 예제</title>
          <link rel="stylesheet" href="styles.css">
        </head>
        <body>
          <div class="grid-container">
            <div class="grid-item item1">엘리먼트 1</div>
            <div class="grid-item item2">엘리먼트 2</div>
            <div class="grid-item item3">엘리먼트 3</div>
            <div class="grid-item item4">엘리먼트 4</div>
            <div class="grid-item item5">엘리먼트 5</div>
            <div class="grid-item item6">엘리먼트 6</div>
          </div>
        </body>
      </html>
    
  

코드 설명:

  • .grid-container: 고정 너비의 세 개의 열과 고정 높이의 세 개의 행으로 구성된 Grid 컨테이너를 생성해. place-content 속성을 사용하여 수평 및 수직으로 내용을 중앙에 위치시켜.
  • .grid-item: 그리드 요소의 기본 스타일을 정의해, 예를 들어 배경색, 텍스트 색상, 패딩, 텍스트 정렬 및 테두리 등.
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION