Docs
  Toggle
Toggle
A two-state button that can be either on or off.
	<script lang="ts">
  import Bold from "lucide-svelte/icons/bold";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle aria-label="toggle bold">
  <Bold />
</Toggle>
  
	<script lang="ts">
  import Bold from "lucide-svelte/icons/bold";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle aria-label="toggle bold">
  <Bold class="size-4" />
</Toggle>
  Installation
	npx shadcn-svelte@next add toggle
   Install bits-ui:
	npm i bits-ui -D
   Copy and paste the component source files linked at the top of this page into your project.
Usage
	<script lang="ts">
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle>Toggle</Toggle>
  Examples
Default
	<script lang="ts">
  import Bold from "lucide-svelte/icons/bold";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle aria-label="toggle bold">
  <Bold />
</Toggle>
  
	<script lang="ts">
  import Bold from "lucide-svelte/icons/bold";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle aria-label="toggle bold">
  <Bold class="size-4" />
</Toggle>
  Outline
	<script lang="ts">
  import Italic from "lucide-svelte/icons/italic";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle variant="outline" aria-label="Toggle italic">
  <Italic />
</Toggle>
  
	<script lang="ts">
  import Italic from "lucide-svelte/icons/italic";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle variant="outline" aria-label="Toggle italic">
  <Italic class="size-4" />
</Toggle>
  With Text
	<script lang="ts">
  import Italic from "lucide-svelte/icons/italic";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle aria-label="Toggle italic">
  <Italic />
  Italic
</Toggle>
  
	<script lang="ts">
  import Italic from "lucide-svelte/icons/italic";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle aria-label="Toggle italic">
  <Italic class="mr-2 size-4" />
  Italic
</Toggle>
  Small
	<script lang="ts">
  import Italic from "lucide-svelte/icons/italic";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle size="sm" aria-label="Toggle italic">
  <Italic />
</Toggle>
  
	<script lang="ts">
  import Italic from "lucide-svelte/icons/italic";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle size="sm" aria-label="Toggle italic">
  <Italic class="size-4" />
</Toggle>
  Large
	<script lang="ts">
  import Italic from "lucide-svelte/icons/italic";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle size="lg" aria-label="Toggle italic">
  <Italic />
</Toggle>
  
	<script lang="ts">
  import Italic from "lucide-svelte/icons/italic";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle size="lg" aria-label="Toggle italic">
  <Italic class="size-4" />
</Toggle>
  Disabled
	<script lang="ts">
  import Underline from "lucide-svelte/icons/underline";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle aria-label="Toggle underline" disabled>
  <Underline />
</Toggle>
  
	<script lang="ts">
  import Underline from "lucide-svelte/icons/underline";
  import { Toggle } from "$lib/components/ui/toggle/index.js";
</script>
 
<Toggle aria-label="Toggle underline" disabled>
  <Underline class="size-4" />
</Toggle>
  On This Page