CSS 函数 - lab()



CSS 中的 lab() 函数使用 CIE L*a*b 颜色空间表示颜色。它表示人眼可见的所有颜色。

要添加颜色透明度,可以将可选的 alpha 分量传递给 lab() 函数。

可能的值

lab() 函数的功能表示法为 lab(L a b[ / A])

  • L:可以包含以下格式之一,表示 CIE 明度

    • 一个 <number>:0 到 100 之间的任何数字,其中 0 对应于 0%(黑色),100 对应于 100%(白色)。

    • 一个 <percentage>:0% 到 100% 之间的任何值。

    • 关键字 none

  • a:可以包含以下格式之一,指定 CIELAB 颜色空间中 a 轴上的距离(显示颜色是绿色/红色)。

    • 一个 <number>:-125 到 125 之间的任何数字。

    • 一个 <percentage>:-100% 到 100% 之间的任何值。

    • 关键字 none

  • b:可以包含以下格式之一,指定 CIELAB 颜色空间中 b 轴上的距离(显示颜色是蓝色/黄色)。

    • 一个 <number>:-125 到 125 之间的任何数字。

    • 一个 <percentage>:-100% 到 100% 之间的任何值。

    • 关键字 none

  • A:表示颜色的透明度。这是一个可选值。

    • <alpha-value>:0 到 1 之间的任何数字,其中 1 对应于完全不透明,0 对应于完全透明。

    • 关键字 none

对于 lab() 函数,值 100% 等于 L 值的数字 100ab 值的 125

语法

lab(29.2345% 39.3825 20.0664) | lab(29 39.3825% 20.0664%) | lab(29.2345% 39.3825 20.0664 / 0.5);

CSS lab() - 值组合

以下示例显示了使用不同值组合使用 lab() 函数的情况

<html>
<head>
<style>
   div {
      width: 100px;
      height: 100px;
      border: 2px solid black;
      margin-bottom: 10px;
   }
   .lab-b-none {
      background-color: lab(100 125 none);
   }
   .lab-a-none {
      background-color: lab(100 none 125);
   }

   .lab-l-none {
      background-color: lab(none -120 125);
      color: white;
   }
   .lab-l-percent {
      background-color: lab(75% -120 none);
   }

   .lab-ab-negative {
      background-color: lab(0 -120 -120);
   }
   .lab-all-positive {
      background-color: lab(100 -125 -110);
   }

   .lab-alpha {
      background-color: lab(100 -125 -110 / 0.2);
   }
</style>
</head>
<body>
   <div class="lab-b-none">b=none</div>
   <div class="lab-a-none">a=none</div>

   <div class="lab-l-none">L=none</div>
   <div class="lab-l-percent">L=%</div>

   <div class="lab-ab-negative">a&b=-ve values</div>
   <div class="lab-all-positive">all=+ve values</div>

   <div class="lab-alpha">alpha value added</div>
</body>
</html>
广告