Skeleton Screen
Content placeholder used to indicate that content is loading.
Projects /
Content placeholder used to indicate that content is loading.
The Skeleton Screen component is a low-fidelity UI used to indicate the content is loading, intending to reduce the end-user's perceived waiting time.
Use this component to design the skeleton screen, using one of the following primitives:
Circle
<div class="ske ske--circle"></div>
Rectangle
<!-- rectangle ratio = 16/9 -->
<div class="ske ske--rect-16:9"></div>
<!-- rectangle ratio = 4/3 -->
<div class="ske ske--rect-4:3"></div>
<!-- rectangle ratio = 1/1 -->
<div class="ske ske--square"></div>
<!-- rectangle w/ fixed height (use CodyFrame's height util classes) -->
<div class="ske ske--rect height-xxl"></div>
Text
<!-- text -->
<div class="ske ske--text"></div>
<!-- increase text placeholder height (use CodyFrame's text util classes) -->
<div class="ske ske--text text-lg"></div>
Use CodyFrame's grid and flexbox utility classes to create responsive layouts.
For example:
<ul class="grid gap-xs items-center">
<li class="col-2">
<div class="ske ske--circle"></div>
</li>
<li class="col-10">
<ul class="grid gap-xxs">
<li class="col-8">
<div class="ske ske--text"></div>
</li>
<li>
<div class="ske ske--text text-sm"></div>
</li>
</ul>
</li>
</ul>
The main idea is to show the skeleton right away, while your "real data" is being loaded. When the loading is finished, you should hide the placeholder and show the real content. How you hide/display content depends on the project setup. An option would be using CodyFrame's visibility classes (.is-visible/.is-hidden).