CSS 다중 열 레이아웃 모듈은 웹 페이지에 대한 다중 열 레이아웃을 쉽게 생성할 수 있는 강력한 도구입니다. 반응형 디자인의 부상은 이 모듈을 사용하는 방법을 이해하는 것이 중요하다는 것을 의미합니다.
열 속성을 사용하여 다양한 화면 크기에 적응하는 유연하고 동적인 레이아웃을 생성할 수 있습니다.
오늘의 메이크업 비디오 콘텐츠를 계속하려면 스크롤하세요.
열 번호, 너비 및 간격 지정
페이지 콘텐츠에 적합한 다중 열 레이아웃을 만들려면 확장할 열 수를 결정하는 것부터 시작해야 합니다. 다중 열 모듈에서 가장 중요한 속성 중 하나는 열 수 콘텐츠를 나눌 열 수를 설정하는 데 사용하는 속성입니다.
예를 들어:
어디에서 강아지를 살 수 있습니까?
.container {
column-count: 3;
}
열의 너비와 간격을 지정할 수도 있습니다. 다음 중 하나를 사용하여 열 너비 값을 설정할 수 있습니다. 지원되는 CSS 단위 좋다 픽셀 , ~에 , 또는 % .
만약에 열 너비 로 설정 자동 , 브라우저는 각 열의 너비를 기준으로 계산합니다. 열 수 속성 및 레이아웃 내부의 사용 가능한 공간.
예를 들어, 이 CSS는 다음과 같이 선언합니다. 삼 각 열의 너비는 다음과 같습니다. 200 픽셀:
.container {
column-count: 3;
column-width: 200px;
}
그만큼 열 간격 속성은 다중 열 레이아웃에서 열 사이의 간격 또는 공간을 지정합니다. 인접한 열 사이의 빈 공백 크기를 설정하고 픽셀, em 또는 기타 지원되는 단위의 길이 값을 사용할 수 있습니다.
예를 들어:
.container {
column-count: 3;
column-gap: 20px; /* sets the gap between columns to 20 pixels */
}
기본적으로 값은 열 간격 로 설정 정상. 브라우저는 시각적으로 만족스러운 상태를 유지하면서 레이아웃의 열 사이에 일관된 간격을 유지하기 위해 이 값을 선택합니다. 이 값은 브라우저마다 다를 수 있으며 글꼴 크기, 줄 높이, 위치 속성 , 및 열 콘텐츠의 기타 레이아웃 속성입니다.
열 균형 확인
CSS 열은 레이아웃 내에서 사용 가능한 모든 공간을 채우려고 합니다. 이로 인해 높이가 크게 다른 열이 생성되어 레이아웃이 고르지 않게 보일 수 있습니다.
열의 균형을 맞추려면 레이아웃의 각 열에 대략 동일한 양의 콘텐츠가 있는지 확인해야 합니다.
CSS를 설정하여 이를 달성할 수 있습니다. 열 채우기 재산 균형 . 그런 다음 브라우저는 콘텐츠를 모든 열에 균등하게 배포하여 거의 같은 높이가 되도록 합니다.
그만큼 열 채우기 속성이 다음으로 설정됨 균형 기본적으로 값은 자동 이 동작을 변경합니다. auto를 사용하면 사용 가능한 공간에 따라 열 전체에 콘텐츠가 배포됩니다. 이로 인해 기둥 사이의 간격이 고르지 않고 기둥 높이가 고르지 않을 수 있습니다. 빈 열이 있는 레이아웃을 생성할 수도 있습니다.
다음은 열 채우기 다중 열 레이아웃에서 열의 균형을 맞추는 속성:
.multi-column-layout {
column-count: 3;
column-gap: 20px;
column-fill: balance;
}
이 예에서는 3개의 열과 각 열 사이의 간격이 20픽셀인 다중 열 레이아웃이 있습니다. 설정하여 열 채우기 재산 균형 , 콘텐츠가 열 전체에 고르게 분포되도록 하여 열 높이가 균형을 이루도록 합니다.
새로운 2ds xl 대 새로운 3ds xl
다음 사항에 유의하는 것이 중요합니다. 열 채우기 속성은 모든 레이아웃에서 제대로 작동하지 않을 수 있으며 열 사이의 간격이 고르지 않을 수 있습니다. 이러한 경우 JavaScript를 사용하여 열의 균형을 수동으로 조정해야 할 수 있습니다. 모범 사례를 따르고 점진적 향상 사용 JavaScript에 의존하지 않도록 합니다.
함께 모아서
CSS 열을 사용하여 레이아웃을 구현하는 방법에 대해 배운 모든 내용을 모아 매거진 스타일 레이아웃을 만드는 데 사용할 수 있습니다.
먼저 기본 HTML 구조를 만듭니다. 컨테이너 요소를 사용하여 콘텐츠를 래핑한 다음 열에 배치할 수 있는 여러 하위 요소를 만듭니다.
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="CSScolumns.css" />
</head>
<body>
<!-- Container Element -->
<div class="magazine-layout">
<!-- Child Elements -->
<div class="article">
<h2>Article Title</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed in
magna vel lorem pharetra bibendum.</p>
</div>
<div class="article">
<h2>Article Title</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed in
magna vel lorem pharetra bibendum.</p>
</div>
<div class="article">
<h2>Article Title</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed in
magna vel lorem pharetra bibendum.</p>
</div>
</div>
</body>
</html>
CSS 다중 열 모듈을 사용하여 잡지 스타일 레이아웃을 생성하려면 열 수 , 열 너비 , 열 간격 , 그리고 열 채우기 속성:
.magazine-layout {
column-count: 3;
column-width: 300px;
column-gap: 20px;
column-fill: balance;
}
.article {
background-color: #f8f8f8;
border-radius: 4px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
padding: 10px;
break-inside: avoid-column;
}
이 예제는 또한 다음을 정의합니다. 내부 침입 재산 .기사 값이 있는 클래스 피하기 열 . 이 속성은 각 기사가 여러 열로 분할되지 않고 단일 열 내에 유지되도록 합니다. 레이아웃은 다음과 같습니다.
지원되지 않는 브라우저에 폴백 사용
다음 사항에 유의하는 것이 중요합니다. 열 수 속성은 모든 브라우저에서 지원되지 않습니다. 지원하지 않는 브라우저 열 수 , 대신 단일 열에 내용을 표시합니다.
지원되지 않는 브라우저에 대체 스타일을 제공하려면 다음과 같은 기능 쿼리를 사용할 수 있습니다. @지원 에 대한 지원을 감지하기 위해 열 수 속성이 지원되지 않는 경우 대체 스타일을 제공합니다.
예를 들어:
.container {
/* Fallback for browsers that do not support column-count */
width: 100%;
}
/* Detect support for column-count */
@supports (column-count: 3) {
.container {
column-count: 3;
}
}
이 예에서는 다음을 사용합니다. @지원 에 대한 지원을 감지하기 위한 기능 쿼리 열 수 재산. 브라우저가 열 수를 지원하는 경우 컨테이너 요소는 세 개의 열에 표시됩니다. 브라우저가 열 수를 지원하지 않으면 다음을 사용하여 단일 열에 콘텐츠를 표시합니다. 너비 재산.
콘텐츠를 열로 나누기
전반적으로 CSS 열은 웹 콘텐츠의 유용성과 사용자 경험을 향상시키는 유연하고 반응이 빠른 다중 열 레이아웃을 만드는 실용적이고 강력한 방법을 제공합니다.
CSS 열과 JavaScript를 함께 사용하면 다양한 사용자 기본 설정 및 장치 크기에 적응하는 훨씬 더 정교하고 동적인 레이아웃을 생성하여 사용자가 웹 콘텐츠에 더 쉽게 액세스하고 참여할 수 있도록 할 수 있습니다.