Use to show a placeholder while content is loading.
import { Flex, Skeleton } from '@backstage/ui';
<Flex direction="column" gap="4">
<Skeleton width={400} height={160} />
<Skeleton width={400} height={12} />
<Skeleton width={240} height={12} />
</Flex>| Prop | Type | Default | Responsive |
|---|---|---|---|
| width | number | 80 | No |
| height | number | 24 | No |
| rounded | boolean | false | No |
| className | string | - | No |
| style | CSSProperties | - | No |
You can use a mix of different sizes to create a more complex skeleton.
<Flex gap="4">
<Skeleton rounded width={48} height={48} />
<Flex direction="column" gap="4">
<Skeleton width={200} height={8} />
<Skeleton width={200} height={8} />
<Skeleton width={200} height={8} />
<Flex gap="4">
<Skeleton width="100%" height={8} />
<Skeleton width="100%" height={8} />
</Flex>
</Flex>
</Flex>You can use a mix of different sizes to create a more complex skeleton.
<Flex direction="column" gap="4">
<Skeleton width={400} height={160} />
<Skeleton width={400} height={12} />
<Skeleton width={240} height={12} />
</Flex>Our theming system is based on a mix between CSS classes, CSS variables and data attributes. If you want to customise this component, you can use one of these class names below.
bui-Skeleton0.9.0 - BREAKING: Changed className prop behavior to augment default styles instead of being ignored or overriding them.Affected components:
If you were passing custom className values to any of these components that relied on the previous behavior, you may need to adjust your styles to account for the default classes now being applied alongside your custom classes. #31496
0.6.0 - New Skeleton component. #30466