zero.appdocs

Grid

Presentations v1.0 zero-schema

Lays children out in a reflowing grid. The grid scrolls vertically, so its MAIN axis is vertical: the per-item extent along it is a height, and the gap along it separates rows. Item width is not set directly — it follows from ItemsPerLine and the available width.

Required fields

PresentationType

Properties

PresentationType string required
In grid multiple items are displayed (such as images or text) in a structured way, with control over the number of items per row and the aspect ratio of each item.
Allowed Grid
ItemsPerLine integer, object optional
Columns per row. An integer fixes the count at every width. An object varies it by viewport using the five-step scale — {"ExtraSmall": 1, "Small": 2, "Medium": 3, "Large": 4, "ExtraLarge": 5} for <576, <768, <992, <1200 and >=1200 px. Note this scale differs from the sm/md/lg scale used by responsive value maps elsewhere.
Default 1
MinItemWidth number optional
Adaptive columns: fit as many equal columns as the available width allows, each at least this many logical pixels wide. When set, it takes precedence over ItemsPerLine. Prefer this over ItemsPerLine — it is the same model every platform implements natively (CSS auto-fill/minmax, SwiftUI GridItem(.adaptive), Flutter maxCrossAxisExtent) and needs no per-breakpoint tuning.
ItemHeight number, object optional
Fixed height of every item, in logical pixels. Takes precedence over ChildAspectRatio, which is ignored when this is set. Accepts a responsive value map.
RowGap number, object optional
Vertical gap between rows, in logical pixels. Accepts a responsive value map.
Default 0
ColumnGap number, object optional
Horizontal gap between columns, in logical pixels. Accepts a responsive value map.
Default 0
ChildAspectRatio number, object optional
Width-to-height ratio of each grid cell. Ignored whenever ItemHeight is set, since a fixed extent wins over a ratio.
Default 1
ItemWidth number, object optional deprecated
Deprecated: named the wrong axis — this always set the item HEIGHT. Use ItemHeight.
ColumnSpacing number, object optional deprecated
Deprecated: named the wrong axis — this always set the gap between ROWS. Use RowGap.
RowSpacing number, object optional deprecated
Deprecated: named the wrong axis — this always set the gap between COLUMNS. Use ColumnGap.
Children array optional
The list of widgets to be displayed in this Column.