#F1F5F9
#E2E8F0
Skeleton Loader is a neutral and pastel 2-colour linear gradient that runs from off-white (#F1F5F9) to light grey (#E2E8F0) at 135°. It suits subtle surfaces and app backgrounds and soft backgrounds, cards and onboarding screens. Black text reads best on it, at a contrast ratio of 18.1:1 against the gradient’s average colour (AAA). Check every point, not just the average →
background: linear-gradient(135deg, #F1F5F9, #E2E8F0);
bg-gradient-to-br from-[#F1F5F9] to-[#E2E8F0]
{
"skeleton-loader": {
"value": "linear-gradient(135deg, #F1F5F9 0%, #E2E8F0 100%)",
"type": "color"
}
}
The same gradient, same direction, ready for your app or design system.
let skeletonLoaderGradient = LinearGradient(
colors: [
Color(red: 0.945, green: 0.961, blue: 0.976),
Color(red: 0.886, green: 0.91, blue: 0.941)
],
startPoint: UnitPoint(x: 0, y: 0),
endPoint: UnitPoint(x: 1, y: 1)
)
// Usage
Rectangle().fill(skeletonLoaderGradient)val skeletonLoaderColors = listOf(Color(0xFFF1F5F9), Color(0xFFE2E8F0))
Modifier.drawBehind {
drawRect(
Brush.linearGradient(
colors = skeletonLoaderColors,
start = Offset(size.width * 0f, size.height * 0f),
end = Offset(size.width * 1f, size.height * 1f)
)
)
}<!-- res/drawable/skeleton-loader_gradient.xml -->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="315"
android:startColor="#F1F5F9"
android:endColor="#E2E8F0"
android:type="linear" />
</shape>const skeletonLoaderGradient = LinearGradient(
begin: Alignment(-1, -1),
end: Alignment(1, 1),
colors: [Color(0xFFF1F5F9), Color(0xFFE2E8F0)],
);
// Usage
Container(decoration: const BoxDecoration(gradient: skeletonLoaderGradient))import { LinearGradient } from 'expo-linear-gradient';
<LinearGradient
colors={['#F1F5F9', '#E2E8F0']}
start={{ x: 0, y: 0 }}
end={{ x: 1, y: 1 }}
style={{ flex: 1 }}
/><svg xmlns="http://www.w3.org/2000/svg" width="1200" height="630" viewBox="0 0 1200 630">
<defs>
<linearGradient id="skeleton-loader" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="#F1F5F9" />
<stop offset="100%" stop-color="#E2E8F0" />
</linearGradient>
</defs>
<rect width="100%" height="100%" fill="url(#skeleton-loader)" />
</svg>:root {
--skeleton-loader-1: #F1F5F9;
--skeleton-loader-2: #E2E8F0;
--skeleton-loader-angle: 135deg;
--skeleton-loader: linear-gradient(var(--skeleton-loader-angle), var(--skeleton-loader-1), var(--skeleton-loader-2));
}
.hero {
background: var(--skeleton-loader);
}$skeleton-loader-1: #F1F5F9;
$skeleton-loader-2: #E2E8F0;
$skeleton-loader: linear-gradient(135deg, $skeleton-loader-1, $skeleton-loader-2);
@mixin skeleton-loader-bg {
background: $skeleton-loader-1;
background: $skeleton-loader;
}| Stop | Name | HEX | RGB | HSL |
|---|---|---|---|---|
| 1 | Off-white | #F1F5F9 | rgb(241, 245, 249) | hsl(210, 40%, 96%) |
| 2 | Light grey | #E2E8F0 | rgb(226, 232, 240) | hsl(214, 32%, 91%) |
Free PNG wallpapers and backgrounds, drawn in your browser at full resolution.
The Skeleton Loader gradient uses 2 colours: #F1F5F9 and #E2E8F0, at an angle of 135°.
Paste background: linear-gradient(135deg, #F1F5F9, #E2E8F0); into any element’s styles. For Tailwind, use the class list in the Tailwind block above.
Black text has the best contrast, at 18.1:1 against the gradient’s average colour, which is AAA. Check the lightest and darkest ends too if text spans the whole gradient.