a11y-color()
접근성을 준수한 전경, 배경 대비 자동 제안 유틸리티 함수
Last updated
접근성을 준수한 전경, 배경 대비 자동 제안 유틸리티 함수
Last updated
.usage {
background-color: #29101e;
color: #bf6397; /* 자동 제안된 전경색 (배경색 대비 4.5:1 이상) */
}@debug color-contrast(#bf6397, #29101e); // 4.59:1@function a11y-color($fg, $bg, $level: 'AA', $size: 16, $bold: false) {
$font-size: validate-font-size($size);
$ratio: get-ratio($level, $font-size, $bold);
$original-contrast: color-contrast($fg, $bg);
@if $original-contrast >= $ratio {
@return $fg;
} @else {
$fg-lod: light-or-dark($fg);
$bg-lod: light-or-dark($bg);
$step: 2%;
@if $fg-lod == 'light' and $bg-lod == 'light' {
$step: -$step;
} @else if $fg-lod == 'dark' and $bg-lod == 'light' {
$step: -$step;
}
@while color-contrast($fg, $bg) < $ratio {
$fg: scale-color($fg, $lightness: $step, $saturation: $step/2);
}
@return $fg;
}
}