Spinner
Spinners indicate that an operation is in progress when the duration is unknown. Use them for loading states where a determinate progress bar isn't practical.
Examples
Size
Spinners are sized based on the current font size. To change the size, set font-size on the spinner itself or on a parent element.
Track Width
Use the --track-width custom property to change the thickness of the spinner's track.
Colors
Use the --track-color and --indicator-color custom properties to recolor the spinner.
Speed
Use the --speed custom property to set how long one full rotation takes.
API
Importing
If you're using the autoloader or a hosted project, components load on demand — no manual import needed. To cherry-pick a component manually, use one of the following snippets.
Import this component directly from the CDN:
import 'https://ka-f.webawesome.com/[email protected]/components/spinner/spinner.js';
After installing Web Awesome via npm, import this component:
import '@awesome.me/webawesome/dist/components/spinner/spinner.js';
If you're self-hosting Web Awesome, import this component from your server:
import './webawesome/dist/components/spinner/spinner.js';
To import this component for React 18 or below, use the following code:
import WaSpinner from '@awesome.me/webawesome/dist/react/spinner/index.js';
CSS Custom Properties
Learn more about CSS custom properties.
| Name | Description |
|---|---|
--indicator-color |
The color of the spinner's indicator.
|
--speed |
The time it takes for the spinner to complete one animation cycle.
|
--track-color |
The color of the track.
|
--track-width |
The width of the track.
|
CSS Parts
Learn more about CSS parts.
| Name | Description | CSS selector |
|---|---|---|
spinner |
The component's outer wrapper. |
::part(spinner)
|
base |
Deprecated. Use the spinner part instead. |
::part(base)
|