Component

BOBGrid

A 12-column responsive layout using BOBGrid + BOBGridItem. Breakpoint-aware spans, gaps, directions, offsets, and spacing.

API reference ↗

Basic usage

Use integer Span (out of Columns, default 12) to size each item.

Span 6 Span 6 Span 4 Span 4 Span 4
RAZOR
<BOBGrid Gap="1rem">
    <BOBGridItem Span="6">Span 6</BOBGridItem>
    <BOBGridItem Span="6">Span 6</BOBGridItem>
    <BOBGridItem Span="4">Span 4</BOBGridItem>
    <BOBGridItem Span="4">Span 4</BOBGridItem>
    <BOBGridItem Span="4">Span 4</BOBGridItem>
</BOBGrid>

Responsive spans

Per-breakpoint spans (Xs, Sm, Md, Lg, Xl) override Span.

xs:12 sm:6 md:4 lg:3 xs:12 sm:6 md:4 lg:3 xs:12 sm:6 md:4 lg:3 xs:12 sm:6 md:12 lg:3
RAZOR
<BOBGrid Gap="1rem">
    <BOBGridItem Xs="12" Sm="6" Md="4" Lg="3">xs:12 sm:6 md:4 lg:3</BOBGridItem>
    <BOBGridItem Xs="12" Sm="6" Md="4" Lg="3">xs:12 sm:6 md:4 lg:3</BOBGridItem>
    <BOBGridItem Xs="12" Sm="6" Md="4" Lg="3">xs:12 sm:6 md:4 lg:3</BOBGridItem>
    <BOBGridItem Xs="12" Sm="6" Md="12" Lg="3">xs:12 sm:6 md:12 lg:3</BOBGridItem>
</BOBGrid>

Auto items

Auto="true" sizes an item to its content.

Auto Auto, wider content here Span 4 fills rest
RAZOR
<BOBGrid Gap="1rem">
    <BOBGridItem Auto="true">Auto</BOBGridItem>
    <BOBGridItem Auto="true">Auto, wider content here</BOBGridItem>
    <BOBGridItem Span="4">Span 4 fills rest</BOBGridItem>
</BOBGrid>

Direction & alignment

Item A Item B Item C
RAZOR
<BOBGrid Direction="GridDirection.Column"
         AlignItems="GridAlignItems.Center"
         JustifyContent="GridJustifyContent.SpaceBetween"
         Gap="0.5rem">
    <BOBGridItem Auto="true">Item A</BOBGridItem>
    <BOBGridItem Auto="true">Item B</BOBGridItem>
    <BOBGridItem Auto="true">Item C</BOBGridItem>
</BOBGrid>

Gaps & spacing

3 3 3 3 6 6
RAZOR
<BOBGrid RowGap="2rem" ColumnGap="0.5rem" P="1rem" style="background: color-mix(in oklab, var(--palette-primary) 6%, transparent); border-radius: 0.5rem;">
    <BOBGridItem Span="3">3</BOBGridItem>
    <BOBGridItem Span="3">3</BOBGridItem>
    <BOBGridItem Span="3">3</BOBGridItem>
    <BOBGridItem Span="3">3</BOBGridItem>
    <BOBGridItem Span="6">6</BOBGridItem>
    <BOBGridItem Span="6">6</BOBGridItem>
</BOBGrid>

Properties

BOBGrid

34 rows.
PropertyTypeDefaultDescription
ChildContentRenderFragment?Content rendered inside the component.
Columnsint?Columns.
MaxWidthstring?MaxWidth.
Gapstring?Gap.
GapXsstring?GapXs.
GapSmstring?GapSm.
GapMdstring?GapMd.
GapLgstring?GapLg.
GapXlstring?GapXl.
RowGapstring?RowGap.
ColumnGapstring?ColumnGap.
DirectionGridDirectionGridDirection.RowDirection.
DirectionXsGridDirection?DirectionXs.
DirectionSmGridDirection?DirectionSm.
DirectionMdGridDirection?DirectionMd.
DirectionLgGridDirection?DirectionLg.
DirectionXlGridDirection?DirectionXl.
JustifyContentGridJustifyContentGridJustifyContent.StartJustifyContent.
AlignItemsGridAlignItemsGridAlignItems.StretchAlignItems.
WrapGridWrapGridWrap.WrapWrap.
Pstring?P.
Ptstring?Pt.
Prstring?Pr.
Pbstring?Pb.
Plstring?Pl.
Pxstring?Px.
Pystring?Py.
Mstring?M.
Mtstring?Mt.
Mrstring?Mr.
Mbstring?Mb.
Mlstring?Ml.
Mxstring?Mx.
Mystring?My.

BOBGridItem

45 rows.
PropertyTypeDefaultDescription
ChildContentRenderFragment?Content rendered inside the component.
Spanint?Span.
Xsint?Xs.
Smint?Sm.
Mdint?Md.
Lgint?Lg.
Xlint?Xl.
AutoboolAuto.
Offsetint?Offset.
OffsetXsint?OffsetXs.
OffsetSmint?OffsetSm.
OffsetMdint?OffsetMd.
OffsetLgint?OffsetLg.
OffsetXlint?OffsetXl.
Orderint?Order.
OrderXsint?OrderXs.
OrderSmint?OrderSm.
OrderMdint?OrderMd.
OrderLgint?OrderLg.
OrderXlint?OrderXl.
AlignSelfGridAlignSelf?AlignSelf.
HideXsboolWhen , the Xs is hidden.
HideSmboolWhen , the Sm is hidden.
HideMdboolWhen , the Md is hidden.
HideLgboolWhen , the Lg is hidden.
HideXlboolWhen , the Xl is hidden.
ShowXsboolWhen , the Xs is shown.
ShowSmboolWhen , the Sm is shown.
ShowMdboolWhen , the Md is shown.
ShowLgboolWhen , the Lg is shown.
ShowXlboolWhen , the Xl is shown.
Pstring?P.
Ptstring?Pt.
Prstring?Pr.
Pbstring?Pb.
Plstring?Pl.
Pxstring?Px.
Pystring?Py.
Mstring?M.
Mtstring?Mt.
Mrstring?Mr.
Mbstring?Mb.
Mlstring?Ml.
Mxstring?Mx.
Mystring?My.