홈페이지 » 코딩 » CSS 그리드 레이아웃 모듈 소개

    CSS 그리드 레이아웃 모듈 소개

    한때 였어. 테이블, 그때 여백과 수레, 그때 플렉스 박스 그리고 지금 그리드: CSS는 항상 새롭고 더 나은 방법으로 코딩 웹 레이아웃. 그만큼 CSS 그리드 레이아웃 모델 레이아웃을 생성하고 업데이트 할 수 있습니다. 두 축을 따라: 수평 및 수직, 너비와 높이 모두에 영향을 미침 요소들.

    격자 레이아웃은 마크 업의 요소 위치에 의존하지 않으므로 요소의 배치를 섞는다. 레이아웃을 변경하지 않고 마크 업할 수 있습니다. 그리드 모델에서 그리드 컨테이너 요소는 그리드 열과 행으로 나누어진다. (집합 적으로 그리드 트랙)에 의해 격자 선. 이제 어떻게해야할까요? 샘플 표 만들기.

    브라우저 지원

    이 글을 쓰는 시점에서 CSS 그리드 모듈은 최신 IE 브라우저와 Edge에서만 지원됩니다. CSS 그리드 실험 단계에서 다른 주요 브라우저에서 수동으로 지원 활성화:

    • Firefox : Shift + F2를 누릅니다., 다음 명령을 입력하십시오. 브라우저 하단에 표시된 GCLI 입력 막대에 pref set layout.css.grid.enabled true.
    • 크롬: 찾아보기 chrome : // 플래그 URL 및 사용 실험적 웹 플랫폼 기능.

    모든 주요 브라우저 지원은 2017 년 중반 / 중반에 와서.

    샘플 그리드

    요소를 그리드 컨테이너로 변환 당신이 사용할 수있는 이 세 가지 중 하나 디스플레이 속성들:

    1. 디스플레이 : 그리드; - 요소는 블록 그리드 컨테이너로 변환
    2. 디스플레이 : 인라인 그리드; - 요소는 인라인 그리드 컨테이너로 변환
    3. 표시 : subgrid; - 요소가 모눈 항목 인 경우 서브 그리드로 변환 그리드 템플릿과 그리드 갭 속성을 무시합니다.

    테이블이 여러 테이블 셀로 구성되어있는 것처럼 그리드는 여러 그리드 셀로 구성된. 표 항목은 다음과 같습니다. 그리드 셀 집합에 할당 총칭하여 그리드 영역.

    우리는 5 개의 섹션이있는 그리드 (그리드 영역): 위쪽, 아래쪽, 왼쪽, 오른쪽 및 가운데. HTML은 다음과 같이 구성됩니다. 컨테이너 div 안에 5 개의 div가 있습니다..

     
    상단
    왼쪽
    센터
    권리
    바닥

    CSS에서 그리드 템플릿 영역 재산 다른 격자 영역을 가진 격자를 정의합니다.. 그 가치 있음, 문자열은 그리드 행을 나타냅니다.문자열 내의 모든 유효한 이름은 열을 나타냅니다.. 에 빈 그리드 셀을 만든다. 당신은 도트 (.) 캐릭터 행 문자열 내에서.

    그만큼 그리드 영역 이름 에 의해 참조되어야한다. 그리드 영역 개별 그리드 항목의 속성.

     .그리드 컨테이너 width : 500px; 높이 : 500px; 디스플레이 : 그리드; grid-template-areas : "top top top" "left center right" "bottom bottom bottom";  .grid-top grid-area : top;  .grid-bottom grid-area : bottom;  .grid-left 그리드 영역 : 왼쪽;  .grid-right grid-area : right;  .grid-center grid-area : center;  

    이 코드는 3 개의 행과 열이있는 격자. 그만큼 상단 항목이있는 영역을 차지합니다. 첫 번째 행에 세 개의 열 그리고 바닥 항목 길이 초과 마지막 행의 3 열. 각각의 왼쪽, 센터권리 항목 소요 중간 열의 한 열.

    이제 우리는 크기 지정 이 행과 열에. 그만큼 그리드 - 템플리트 - 컬럼격자 - 템플릿 - 행 속성들 그리드 트랙의 크기를 정의한다. (행 또는 열).

     .그리드 컨테이너 width : 500px; 높이 : 500px; 디스플레이 : 그리드; grid-template-areas : "top top top" "left center right" "bottom bottom bottom"; grid-template-columns : 100px 자동 100px; grid-template-rows : 50px 자동 150px;  

    다음은 CSS 그리드의 모양입니다 (몇 가지 추가 스타일 사용).

    IMAGE : 그리드

    그리드 항목 사이의 간격

    추가 할 수 있습니다. 열과 행 사이의 공백 ~을 사용하여 그리드 - 칼럼 - 갭격자 줄 간격, 또는 그들의 수기 속성 그리드 - 갭.

     .그리드 컨테이너 width : 500px; 높이 : 500px; 디스플레이 : 그리드; grid-template-areas : "top top top" "left center right" "bottom bottom bottom"; grid-template-columns : 100px 자동 100px; grid-template-rows : 50px 자동 150px; 그리드 간격 : 5px 5px;  

    아래에서 볼 수 있습니다. 그리드 - 갭 실제로 그리드 항목 사이에 간격이 추가되었습니다..

    이미지 : 트랙 사이에 공간이있는 격자

    그리드 내용 및 항목 정렬

    그만큼 정당화 - 내용 표 컨테이너의 속성 (.격자 컨테이너)는 그리드의 내용을 정렬합니다. 인라인 축 (가로축) 그리고 재산 정렬 콘텐츠, 그리드의 내용을 정렬한다. 블록 축 (세로축). 두 속성 이 값들 중 하나를 가질 수있다.: 스타트, 종료, 센터, ~ 사이의, 공백공간 균일하게.

    해당되는 경우 트랙 (행 또는 열) 크기 내용에 맞게 축소 정렬 할 때. 그리드 내용의 스크린 샷보기 서로 다른 값으로 정렬 이하.

    justify-content : 시작;
    justify-content : 끝;
    justify-content : 센터;
    justify-content : 스페이스 사이;
    justify-content : 공백 주위;
    justify-content : 공백 - 균등하게;
    align-content : 시작;
    align-content : 끝;
    align-content : center;
    align-content : 스페이스 사이;
    align-content : 공백;
    align-content : 공간 균일하게;

    둘 다 정당화 - 내용정렬 콘텐츠 속성들 격자 내에서 전체 내용 정렬.

    그리드 영역 내에서 개별 항목 정렬, 사용 다른 한 쌍의 정렬 특성: justify-items정렬 항목. 둘 다 다음 값 중 하나를 가질 수 있습니다. 스타트, 종료, 센터, 기준선 (영역의 기본 격자 선을 따라 항목 정렬) 뻗기 (항목이 전체 영역을 채 웁니다).