@appnest/masonry-layout

中文文档
2.2.3发布于 2023/09/29MITTypeScriptESM + CJS零依赖近 30 天下载 1万

一个高效而快的网络组件,可以给你一个美丽的砖瓦布局

中文使用文档
文档目录12 节
  1. * 安装
  2. 示例
  3. QQ 自定义
  4. 列数
  5. 列和行之间的间隔
  6. 最大列宽度
  7. 更改卸出时间
  8. • 触发布局
  9. * 概览
  10. 砖瓦铺设
  11. QQ 支持旧浏览器
  12. 许可证

@ appnest/ masonry- layout (英语)

Downloads per month NPM Version Dependencies Contributors Published on webcomponents.org

一个高效而快的网络组件,可以给你一个美丽的砖瓦布局
来这里看演示 https://appnest-demo.firebaseapp.com/masonry-layout 页面存档备份,存于互联网档案馆。 。 。 .


  • 简单 : 在盒子里工作(加入你的标记)
  • 轻量级: 超小(1kb 微调和gziped)
  • 零依赖性 : 创建时只使用 vanilla js - 没有依赖性和框架不可知性 !
  • 自定义 : 几乎可以自定义一切(如列,过渡,间隙).
  • 方便用户 : 在添加网格大小变化或新元素时自动重新分配项目
  • 表演者: 高效快 - 牢记性能的构建( F)

-----------------------------------------------------

* 安装

npm i @appnest/masonry-layout

如果你喜欢使用 umd 捆绑可以装入 https://unpkg.com/@appnest/masonry-layout/umd/masonry-layout.min.js 换句话说.

-----------------------------------------------------

示例

导入 @appnest/masonry-layout 在你的代码中某个地方 你准备去! 简单添加 masonry-layout 元素为您的 html 然后在开始和关闭标记之间添加您的元素.

<masonry-layout>
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
</masonry-layout>

-----------------------------------------------------

QQ 自定义

通过应用属性自定义功能.

列数

这个 cols 属性指定列的数量。 默认值为 auto 它确保根据可用的宽度分配元素.

<masonry-layout cols="5">
  ...
</masonry-layout>

列和行之间的间隔

这个 gap 属性指定元素间相差的像素。 默认值为 24px。 。 。 .

<masonry-layout gap="50">
  ...
</masonry-layout>

最大列宽度

这个 maxcolwidth 指定一个列的最大像素数,当 cols 属性设置为 auto。默认值是 400px。 。 。 .

<masonry-layout maxcolwidth="200">
  ...
</masonry-layout>

更改卸出时间

这个 debounce 属性指定了以 ms 为单位的时间量,布局的回流每次在瓦砾布局的大小变化时会解除。 这种回流被解开,以避免排版算法被连续引用过多次. 默认值为 300ms。 。 。 .

<masonry-layout debounce="500">
  ...
</masonry-layout>

-----------------------------------------------------

• 触发布局

如果你想强迫布局可以调用 layout() 函数.

document.querySelector("masonry-layout").layout();

如果您想要解开布局, 您可以使用 scheduleLayout() 函数代替.

document.querySelector("masonry-layout").scheduleLayout();

-----------------------------------------------------

* 概览

以下是元素的完整概述.

砖瓦铺设

共济会布局网页组件. 它把时间档元素置于最佳位置 在现有的垂直空间上, 就像泥瓦匠在墙上装了石头.

示例

<masonry-layout><div class="item"></div><div class="item"></div></masonry-layout>

属性

财产属性类型说明
colscolsnumber | "auto"柱数.
debouncedebouncenumber元素调整大小时的去弹出分数.
gapgapnumber列之间的像素差距.
layout
maxColWidthmaxcolwidthnumber每个列的最大宽度, 如果设置为自动 .
onResize
onSlotChange

方法

方法类型说明
layout(): void排列元素.
onResize(entries?: object | undefined): void每次元素大小调整,我们需要安排一个布局
如果可用列的数量已经改变.
onSlotChange(): void
renderCols(colCount: number): void折射出 X 个数列 .
scheduleLayout(ms?: number): void计划布局.

槽数

名称说明
应当以布局分配的项目.

CSS 阴影部件

编说明
column石器布局每栏.
column-index给定索引中的特定一栏(例如一栏-0将针对一栏等)

-----------------------------------------------------

QQ 支持旧浏览器

如果您要支持不支持的更老浏览器 自定义元素, (中文(简体) ), 阴影多姆 或者说 调整观察员的大小 您应该填充功能。 通过使用 精彩的花花公子服务。可以在代码一行中添加以下内容: index.html 在导入前 masonry-layout。 。 。 .

<script crossorigin src="https://polyfill.app/api/polyfill?features=es,template,shadow-dom,custom-elements,resizeobserver"></script>

-----------------------------------------------------

许可证

许可证根据 麻省理工学院。 。 。 .

版本与发布记录

@appnest/masonry-layout 共发布 31 个版本,首次发布于 2019/01/27;过去 12 个月发布了 0 个版本。

版本发布日期距今
2.2.3latest2023/09/293 年前
2.2.22023/09/293 年前
2.0.82020/03/236 年前
2.0.72020/02/186 年前
2.0.62019/12/046 年前
2.0.52019/12/046 年前

关于 @appnest/masonry-layout 的常见问题

@appnest/masonry-layout 是什么?

一个高效而快的网络组件,可以给你一个美丽的砖瓦布局

如何安装 @appnest/masonry-layout?

在项目目录运行 npm install @appnest/masonry-layout,或使用 pnpm add / yarn add / bun add。

@appnest/masonry-layout 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@appnest/masonry-layout 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@appnest/masonry-layout 可以商用吗?

@appnest/masonry-layout 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@appnest/masonry-layout 的下载量有多少?

根据 npm 官方下载统计,@appnest/masonry-layout 在 2026/10/07 – 2026/11/05 这 30 天内被下载 10,221 次,日均约 341 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@appnest/masonry-layout 还在维护吗?

最新版本 2.2.3 发布于 2023/09/29(3 年前);至今共发布 31 个版本,其中过去 12 个月发布了 0 个;首次发布于 2019/01/27。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。