CSS contrast-color() 背景色一变 文字颜色跟着在黑白之间切换

CSS contrast-color() 背景色一变 文字颜色跟着在黑白之间切换

CSS contrast-color()

CSS contrast-color() 背景色一变 文字颜色跟着在黑白之间切换


CSS 的 contrast-color() 背景色一变 文字颜色跟着在黑白之间切换:

background: var(--bg-color);
color: contrast-color(var(--bg-color));

color-mix() 做微调

color: color-mix(
  in srgb,
  var(--brand-color),
  contrast-color(var(--bg-color)) 20%
);

浏览器只负责帮你判断"该偏亮还是偏暗",比例没有绝对标准,但可以先这么试:

  • 浅色背景:混 10% 到 25%
  • 深色背景:混 30% 到 40%

用 style queries 切不同调色板

@property --contrast {
  syntax: '<color>';
  inherits: true;
  initial-value: #000;
}

:root {
  --bg-color: #f5f5f5;
  --contrast: contrast-color(var(--bg-color));
}

@container style(--contrast: #000) {
  .card { --text-color: #0066cc; }
}

@container style(--contrast: #fff) {
  .card { --text-color: #4da6ff; }
}


声明

本网站部分内容转载自网络,转载目的在于传递更多信息,不代表本站赞同其观点或对其真实性负责。 转载内容版权归原作者所有,如侵犯您的合法权益,请通过邮箱 / 联系方式告知,本站将在 24 小时内删除。 任何单位或个人认为本站内容可能涉嫌侵权,应及时书面通知并提供权属证明,本站将依法处理。

💬 评论