This covers basic techniques for styling Skeleton components. View our comprehensive guide to learn more.

Via Component Props

This is the recommended manner to style most components. Each component provides a set of style props (read: properties) that allow you to override the default style classes. See a list of available options under the "Props" tab per each feature in Skeleton.

<ExampleComponent background="bg-secondary-500 md:bg-primary-500">Skeleton</ExampleComponent>
TIP: You may provide multiple utility classes per each prop, as well as use variations such as dark:bg-green-500.

Via the Class Attribute

If a style prop is not available, you can still provide arbitrary utility classes via a standard class attribute. These styles are always applied to the parent element in the component template.

<ExampleComponent class="text-3xl px-10 py-5">Skeleton</ExampleComponent>

Tailwind's Arbitrary Variants

If you need to target deeper than the parent element, we recommend using Tailwind's arbitrary variant syntax.

<ExampleComponent class="[&>.foo-label]:p-4">...</ExampleComponent>

This will affect the Parent > .foo-label element and apply a Tailwind class of p-4.

Global Styles Overrides

Skeleton components include selector classes, such as .avatar-image within the Avatar component. Please note that selector classes are always the first listed.

<img class="avatar-image ...">...</img>

Use these selector classes to target global style overrides to all instances of this feature in your global stylesheet.

.avatar-image { @apply border-2 border-red-500; }
In some cases you may need to use ! important or style light and dark mode variants to give precedence.