CSS 벽돌 레이아웃 예제
可以使用CSS Grid或CSS多列布局实现类瀑布流效果,但原生display: masonry尚未被广泛支持。1. 使用CSS Grid:通过设置display: grid、grid-template-columns定义列数、grid-auto-rows定义行高并结合gap间距,使不同高度的项目自动排列成近似瀑布流的布局,配合break-inside: avoid防止内容断行,适用于现代浏览器且支持响应式调整列数。2. 使用CSS多列布局(column-count):适用于文本或简单元素,通过column-count划分列数,item设为inline-block并避免分页断开,优点是天然支持垂直堆叠,缺点是控制性弱、仅适合顺序排列。3. 注意事项:当前(2025年初)原生display: masonry仍处于提案阶段,主流浏览器不支持,如需精准填空排列(如Pinterest风格),应使用JavaScript库如Masonry.js或Isotope。综上,对一般项目推荐使用CSS Grid模拟瀑布流,兼顾兼容性与维护性;复杂场景建议采用JS方案以获得更优布局效果。
CSS Masonry Layout(瀑布流布局)是一种常见的网页布局方式,特别适合展示图片、卡片等内容不等高的场景。虽然传统的“masonry”效果多用 JavaScript 实现(如 Masonry.js),但现在可以通过 CSS 的 column-count
+ inline-block
或 display: grid
来实现简易的纯 CSS 瀑布流效果。

下面是一个使用 纯 CSS Grid 模拟 Masonry 布局 的实用示例(目前原生 display: masonry
尚未广泛支持,但可以用 Grid 折中实现):
✅ 使用 CSS Grid 实现类 Masonry 布局
HTML 结构
<div class="masonry-grid"> <div class="item">Item 1<br>Some content here.</div> <div class="item">Item 2<br>Short</div> <div class="item">Item 3<br>A longer item with more text.</div> <div class="item">Item 4<br>Image or card</div> <div class="item">Item 5<br>Another one</div> <div class="item">Item 6<br>Very tall content<br>Line<br>Line<br>Line</div> </div>
CSS 样式
.masonry-grid { display: grid; grid-template-columns: repeat(3, 1fr); /* 3列 */ grid-auto-rows: minmax(100px, auto); /* 最小高度,避免太扁 */ gap: 12px; /* 间距 */ padding: 16px; } .item { background: #f0f0f0; border: 1px solid #ddd; border-radius: 8px; padding: 16px; /* 关键:让项目自动“堆叠”而不强制对齐行 */ break-inside: avoid; /* 避免在打印或分页时断开 */ word-wrap: break-word; } /* 响应式:在小屏幕上变为2列或1列 */ @media (max-width: 768px) { .masonry-grid { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 480px) { .masonry-grid { grid-template-columns: 1fr; } }
? 效果说明
- 这种方法利用了 CSS Grid 自动行生成(
grid-auto-rows
) 和 内容高度自适应 的特性。 - 每个
.item
高度不同,Grid 会自动排列成类似“瀑布流”的视觉效果。 - 虽然不是严格意义上的 Masonry(比如无法像 JS 那样精确填空),但在大多数现代浏览器中表现良好。
⚠️ 注意事项
- 原生
display: masonry
还未支持:目前(截至 2025 年初)主流浏览器尚未支持display: masonry
(属于 CSSWG 提案阶段),所以不能直接使用。 - 更真实的 Masonry?用 JS:如果需要更精确的布局(如 Pinterest 风格),推荐使用 JavaScript 库:
- Masonry by Metafizzy
- Isotope(功能更强)
- 或使用 React/Vue 的第三方组件封装。
✅ 替代方案:使用 CSS 多列(column-count
)
适合文本类或简单元素的瀑布流:

.masonry-columns { column-count: 3; column-gap: 16px; } .item { display: inline-block; width: 100%; margin-bottom: 12px; break-inside: avoid; /* 防止元素被切断 */ }
优点:天然支持瀑布流排列;缺点:只适合从上到下顺序流式布局,控制性差。
基本上就这些。对于大多数现代项目,用 Grid 模拟 + 响应式处理 是最简单、兼容性好的方案。真正复杂的 Masonry 排列还是交给 JS 更稳妥。

위 내용은 CSS 벽돌 레이아웃 예제의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undress AI Tool
무료로 이미지를 벗다

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

CSS 목록 스타일을 변경하려면 먼저 목록 스타일 유형을 사용하여 총알 또는 번호 스타일을 변경하십시오. 1. 목록 스타일 유형을 사용하여 UL의 총알을 디스크, 원 또는 정사각형으로 설정하고 OL의 수는 소수점, 하부 알파, 어퍼 알파, 로마 또는 상단 로마입니다. 2. 목록 스타일로 태그를 완전히 제거하십시오. 3. 목록 스타일 이미지 : url ( 'bullet.png')을 사용하여 사용자 정의 이미지로 바꿉니다. 4. 목록 스타일 위치 : in

CSS를 사용하여 점선 테두리를 생성하고 테두리 속성을 점선으로 설정하십시오. 예를 들어, "Border : 3pxDotted#000"은 요소에 3 픽셀의 블랙 도트 테두리를 추가 할 수 있습니다. 경계 넓이를 조정하면 포인트의 크기가 변경 될 수 있습니다. 더 넓은 경계는 더 큰 포인트를 생성합니다. "Border-Top : 2pxDottedRed"와 같은 특정 측면의 점선 테두리를 설정할 수 있습니다. 점선 테두리는 DIV 및 입력과 같은 블록 레벨 요소에 적합합니다. 이들은 종종 접근성을 향상시키기 위해 포커스 상태 또는 편집 가능한 영역에서 사용됩니다. 색상 대비에주의하십시오. 동시에, Dashed의 단거리 스타일과는 다른 점이있는 점은 원형 점 모양을 나타냅니다. 이 기능은 모든 주류 브라우저에서 널리 사용됩니다.

순수한 CSS로 반응 형 자동 회전 목마 슬라이더를 만들고 HTML 구조, Flexbox 레이아웃 및 CSS 애니메이션을 결합하는 것이 가능합니다. 2. 먼저 여러 권장 항을 포함하는 시맨틱 HTML 컨테이너를 구축하고 각 .item에는 참조 내용 및 저자 정보가 포함되어 있습니다. 3. 부모 컨테이너를 사용하여 디스플레이를 설정하십시오 : Flex, 너비 : 300% (3 개의 슬라이드) 오버플로 : 숨겨져 수평 배열을 달성하십시오. 4. @KeyFrames를 사용하여 TransLateX 변환을 0%에서 -100%로 정의하고 애니메이션을 결합하여 Scroll15SlinearInfinite를 결합하여 원활한 자동 스크롤을 달성하십시오. 5. 미디어 추가

cssgradientsprovidesmoothcolortransitionswithoutimages.1.lineargradientsTransitionColorSalongastRaightlineSingDipectionSliketobottomorangles 45deg, andsupportmultiplecolorstopsforcomplexeffects.2

CSS의 유리 모방 효과를 만들려면 배경 필터를 사용하여 배경 흐림을 달성하고 RGBA (255,255,255,0.1)와 같은 반투명 배경을 설정하고 계층의 감각을 향상시키기 위해 미묘한 경계와 그림자를 추가하고 요소 뒤에 충분한 시각적 내용이 있는지 확인해야합니다. 1. 배경 필터 : Blur (10px)를 사용하여 배경 내용을 흐리게합니다. 2. RGBA 또는 HSLA를 사용하여 투명한 배경을 정의하여 투명도의 정도를 제어합니다. 3. 4. 컨테이너에 그림이나 텍스처와 같은 풍부한 배경이 있어야하는 침투 효과가 흐려집니다. 5. 오래된 브라우저와 호환됩니다

UseBuilt-Incursortypes-Pointer, 도움말, Ornot-OllowedToprovideimmediateveedbackferentactiveElements.2. ApplyCustomCurimagess와 함께 제공되는 경우, applycifyingahotspotandalwaysincludingafalllikeautoorpointer.3.

TheGrid-Template-AreaspropertyAllowsDeveloyStocreateIntureative, ReadableAlayoutSByDefiningNamedGridAreas; withgrid-areAnamesonChildElements with with with with with with with with with with with with with with with with with with with withlestecell

상자 그림자를 추가하려면 Box-Shadow 속성을 사용하십시오. 1. 기본 구문은 Box-Shadow입니다 : 수평 오프셋 수직 오프셋 블러 반경 반경 그림자 색상; 2. 처음 세 값이 필요하고 나머지는 선택 사항입니다. 3. RGBA () 또는 HSLA ()를 사용하여 투명한 효과를 달성합니다. 4. 양의 확장 반경은 그림자를 확장하고 음수 값이 감소된다. 5. 쉼표 분리로 여러 그림자를 추가 할 수 있습니다. 6. 다른 배경에서 가시성을 테스트 할 수 있도록 과용을 피해야합니다. 이 속성은 브라우저에서 잘 지원되며 합리적인 사용은 설계 텍스처를 향상시킬 수 있습니다.
