Loading...
Loading...
Compare original and translation side by side
website/design-catalog/website/design-catalog/neobrutalism-primaryneobrutalism-darkneobrutalism-primaryneobrutalism-darkswiss-modern-stripeswiss-modern-linearswiss-modern-stripeswiss-modern-linearglassmorphism-visionglassmorphism-macosglassmorphism-visionglassmorphism-macosmaximalism-carnivalmaximalism-glossiermaximalism-carnivalmaximalism-glossierhyperminimalism-monochromehyperminimalism-applehyperminimalism-monochromehyperminimalism-applecyberpunk-neoncyberpunk-2077cyberpunk-neoncyberpunk-2077cottagecore-meadowcottagecore-autumncottagecore-meadowcottagecore-autumnbrutalist-minimal-documentbrutalist-minimal-documentPrimary: #hex - usage
Secondary: #hex - usage
Accent: #hex - usage
Background: #hex - usage
Text: #hex - usageDisplay: Font Family, weight
Headings: Font Family, weight
Body: Font Family, weight
Base size: Xpx
Scale ratio: X.XXPrimary: #hex - 用途
Secondary: #hex - 用途
Accent: #hex - 用途
Background: #hex - 用途
Text: #hex - 用途Display: 字体家族, 字重
Headings: 字体家族, 字重
Body: 字体家族, 字重
基础字号: Xpx
缩放比例: X.XXfunction contrastRatio(hex1, hex2) {
// Use actual calculation, not cached values
const L1 = relativeLuminance(hex1);
const L2 = relativeLuminance(hex2);
return (Math.max(L1, L2) + 0.05) / (Math.min(L1, L2) + 0.05);
}function contrastRatio(hex1, hex2) {
// Use actual calculation, not cached values
const L1 = relativeLuminance(hex1);
const L2 = relativeLuminance(hex2);
return (Math.max(L1, L2) + 0.05) / (Math.min(L1, L2) + 0.05);
}