Checkbox
Custom-styled checkboxes with list layout.
Usage
<label class="zui-checkbox">
<input type="checkbox" checked />
Accept terms
</label> import { Checkbox } from '@mrmartineau/zui/react'
<Checkbox defaultChecked>Accept terms</Checkbox> ---
import { Checkbox } from '@mrmartineau/zui/astro'
---
<Checkbox checked>Accept terms</Checkbox> import { Checkbox } from '@mrmartineau/zui/solid'
<Checkbox defaultChecked>Accept terms</Checkbox> <script lang="ts">
import { Checkbox } from '@mrmartineau/zui/svelte'
let accepted = $state(true)
</script>
<Checkbox bind:checked={accepted}>Accept terms</Checkbox> <template>
<Checkbox checked>Accept terms</Checkbox>
</template>
<script setup>
import { Checkbox } from '@mrmartineau/zui/vue'
</script> Checkbox List
Use .zui-checkbox-list for vertical grouping.
<fieldset>
<legend class="zui-label">Interests</legend>
<div class="zui-checkbox-list">
<label class="zui-checkbox">
<input type="checkbox" checked />
Music
</label>
<label class="zui-checkbox">
<input type="checkbox" />
Sports
</label>
<label class="zui-checkbox">
<input type="checkbox" checked />
Travel
</label>
<label class="zui-checkbox">
<input type="checkbox" />
Reading
</label>
</div>
</fieldset> import { Checkbox, Label } from '@mrmartineau/zui/react'
<fieldset>
<Label as="legend">Interests</Label>
<div className="zui-checkbox-list">
<Checkbox defaultChecked>Music</Checkbox>
<Checkbox>Sports</Checkbox>
<Checkbox defaultChecked>Travel</Checkbox>
<Checkbox>Reading</Checkbox>
</div>
</fieldset> ---
import { Checkbox, Label } from '@mrmartineau/zui/astro'
---
<fieldset>
<Label>Interests</Label>
<div class="zui-checkbox-list">
<Checkbox checked>Music</Checkbox>
<Checkbox>Sports</Checkbox>
<Checkbox checked>Travel</Checkbox>
<Checkbox>Reading</Checkbox>
</div>
</fieldset> import { Checkbox, Label } from '@mrmartineau/zui/solid'
<fieldset>
<Label as="legend">Interests</Label>
<div class="zui-checkbox-list">
<Checkbox defaultChecked>Music</Checkbox>
<Checkbox>Sports</Checkbox>
<Checkbox defaultChecked>Travel</Checkbox>
<Checkbox>Reading</Checkbox>
</div>
</fieldset> <script lang="ts">
import { Checkbox, Label } from '@mrmartineau/zui/svelte'
let music = $state(true)
let sports = $state(false)
let travel = $state(true)
let reading = $state(false)
</script>
<fieldset>
<Label as="legend">Interests</Label>
<div class="zui-checkbox-list">
<Checkbox bind:checked={music}>Music</Checkbox>
<Checkbox bind:checked={sports}>Sports</Checkbox>
<Checkbox bind:checked={travel}>Travel</Checkbox>
<Checkbox bind:checked={reading}>Reading</Checkbox>
</div>
</fieldset> <template>
<fieldset>
<Label as="legend">Interests</Label>
<div class="zui-checkbox-list">
<Checkbox checked>Music</Checkbox>
<Checkbox>Sports</Checkbox>
<Checkbox checked>Travel</Checkbox>
<Checkbox>Reading</Checkbox>
</div>
</fieldset>
</template>
<script setup>
import { Checkbox, Label } from '@mrmartineau/zui/vue'
</script> Disabled
<label class="zui-checkbox">
<input type="checkbox" disabled checked />
Disabled checked
</label>
<label class="zui-checkbox">
<input type="checkbox" disabled />
Disabled unchecked
</label> import { Checkbox } from '@mrmartineau/zui/react'
<Checkbox disabled defaultChecked>Disabled checked</Checkbox>
<Checkbox disabled>Disabled unchecked</Checkbox> ---
import { Checkbox } from '@mrmartineau/zui/astro'
---
<Checkbox disabled checked>Disabled checked</Checkbox>
<Checkbox disabled>Disabled unchecked</Checkbox> import { Checkbox } from '@mrmartineau/zui/solid'
<Checkbox disabled defaultChecked>Disabled checked</Checkbox>
<Checkbox disabled>Disabled unchecked</Checkbox> <script lang="ts">
import { Checkbox } from '@mrmartineau/zui/svelte'
</script>
<Checkbox disabled checked>Disabled checked</Checkbox>
<Checkbox disabled>Disabled unchecked</Checkbox> <template>
<Checkbox disabled checked>Disabled checked</Checkbox>
<Checkbox disabled>Disabled unchecked</Checkbox>
</template>
<script setup>
import { Checkbox } from '@mrmartineau/zui/vue'
</script>