Skip to content

Spinner

A spinner indicates ongoing operations or content loading, providing clear visual feedback.

Basic Usage

Default renders as spinner-border rotating border style.

vue

<TSpinner/>

Type

Use the type prop to switch to grow filling style.

vue

<TSpinner type="border"/>
<TSpinner type="grow"/>

Color

Set the color prop to apply any Tabler preset color.

vue

<TSpinner color="blue"/>
<TSpinner color="red"/>
<TSpinner color="green"/>

Works with the grow type as well:

vue

<TSpinner type="grow" color="blue"/>
<TSpinner type="grow" color="green"/>

Small Size

Set sm for a compact variant, ideal for tight layouts or buttons.

vue

<TSpinner sm/>
<TSpinner sm type="grow" color="green"/>

Dots

Enable the dots prop to display three bouncing dots, suitable for compact informational contexts.

vue

<TSpinner dots/>

Inside Buttons

Embed a spinner inside a button to represent a loading state. Use sm for the best visual result.

vue

<t-button>
  <TSpinner sm class="me-2"/>
  Loading...
</t-button>

API

Props

PropDescriptionTypeDefault
typeSpinner variant'border' | 'grow''border'
colorTabler preset colorTablerColorundefined
smSmall size modifierbooleanfalse
dotsAnimated dots mode (mutually exclusive with type/size/color)booleanfalse
labelAccessibility label for screen readersstring'Loading...'