src/docs/min-inline-size.mdx
import { ApiTable } from "@/components/api-table.tsx"; import { Stripes } from "@/components/stripes.tsx"; import { CustomizingYourSpacingScale, ResponsiveDesign, UsingACustomValue } from "@/components/content.tsx"; import { Example } from "@/components/example.tsx"; import { Figure } from "@/components/figure.tsx";
export const title = "min-inline-size"; export const description = "Utilities for setting the minimum inline size of an element.";
<ApiTable rows={[ ["min-inline-<number>", "min-inline-size: calc(var(--spacing) * <number>);"], ["min-inline-<fraction>", "min-inline-size: calc(<fraction> * 100%);"], ["min-inline-3xs", "min-inline-size: var(--container-3xs); /* 16rem (256px) /"], ["min-inline-2xs", "min-inline-size: var(--container-2xs); / 18rem (288px) /"], ["min-inline-xs", "min-inline-size: var(--container-xs); / 20rem (320px) /"], ["min-inline-sm", "min-inline-size: var(--container-sm); / 24rem (384px) /"], ["min-inline-md", "min-inline-size: var(--container-md); / 28rem (448px) /"], ["min-inline-lg", "min-inline-size: var(--container-lg); / 32rem (512px) /"], ["min-inline-xl", "min-inline-size: var(--container-xl); / 36rem (576px) /"], ["min-inline-2xl", "min-inline-size: var(--container-2xl); / 42rem (672px) /"], ["min-inline-3xl", "min-inline-size: var(--container-3xl); / 48rem (768px) /"], ["min-inline-4xl", "min-inline-size: var(--container-4xl); / 56rem (896px) /"], ["min-inline-5xl", "min-inline-size: var(--container-5xl); / 64rem (1024px) /"], ["min-inline-6xl", "min-inline-size: var(--container-6xl); / 72rem (1152px) /"], ["min-inline-7xl", "min-inline-size: var(--container-7xl); / 80rem (1280px) */"], ["min-inline-auto", "min-inline-size: auto;"], ["min-inline-px", "min-inline-size: 1px;"], ["min-inline-full", "min-inline-size: 100%;"], ["min-inline-screen", "min-inline-size: 100vw;"], ["min-inline-dvw", "min-inline-size: 100dvw;"], ["min-inline-dvh", "min-inline-size: 100dvh;"], ["min-inline-lvw", "min-inline-size: 100lvw;"], ["min-inline-lvh", "min-inline-size: 100lvh;"], ["min-inline-svw", "min-inline-size: 100svw;"], ["min-inline-svh", "min-inline-size: 100svh;"], ["min-inline-min", "min-inline-size: min-content;"], ["min-inline-max", "min-inline-size: max-content;"], ["min-inline-fit", "min-inline-size: fit-content;"], ["min-inline-(<custom-property>)", "min-inline-size: var(<custom-property>);"], ["min-inline-[<value>]", "min-inline-size: <value>;"], ]} />
Use min-inline-<number> utilities like min-inline-24 and min-inline-64 to set an element to a fixed minimum inline size based on the spacing scale:
<!-- [!code classes:min-inline-80,min-inline-64,min-inline-48,min-inline-40,min-inline-32,min-inline-24] -->
<div class="inline-20 ...">
<div class="min-inline-80 ...">min-inline-80</div>
<div class="min-inline-64 ...">min-inline-64</div>
<div class="min-inline-48 ...">min-inline-48</div>
<div class="min-inline-40 ...">min-inline-40</div>
<div class="min-inline-32 ...">min-inline-32</div>
<div class="min-inline-24 ...">min-inline-24</div>
</div>
Use min-inline-full or min-inline-<fraction> utilities like min-inline-1/2 and min-inline-2/5 to give an element a percentage-based minimum inline size:
<!-- [!code classes:min-inline-3/4] -->
<div class="flex ...">
<div class="min-inline-3/4 ...">min-inline-3/4</div>
<div class="inline-full ...">inline-full</div>
</div>
Use utilities like min-inline-sm and min-inline-xl to set an element to a fixed minimum inline size based on the container scale:
<!-- [!code classes:min-inline-lg,min-inline-md,min-inline-sm,min-inline-xs,min-inline-2xs,min-inline-3xs] -->
<div class="inline-40 ...">
<div class="min-inline-lg ...">min-inline-lg</div>
<div class="min-inline-md ...">min-inline-md</div>
<div class="min-inline-sm ...">min-inline-sm</div>
<div class="min-inline-xs ...">min-inline-xs</div>
<div class="min-inline-2xs ...">min-inline-2xs</div>
<div class="min-inline-3xs ...">min-inline-3xs</div>
</div>