CSS之Color

作者: zh_yang | 来源:发表于2017-08-04 19:40 被阅读0次

    1.颜色有几种写法

    这里暂且不提透明色,把它放在下一部分。

    (1).关键字写法:

    直接指定颜色名,如red、blue、orange等。
    代码示例:
    <h1 style="color:red">测试</h1>

    (2).十六进制写法

    十六进制颜色是这样规定的:#RRGGBB,其中的 RR(红色)、GG(绿色)、BB(蓝色)十六进制整数规定了颜色的成分。所有值必须介于 0 与 F 之间。
    举例说,#0000ff 值显示为蓝色,这是因为蓝色成分被设置为最高值(ff),而其他成分被设置为 0,此时可简写为#00f。
    代码示例:
    <h1 style="color:#ff0000">测试</h1>

    (3).RGB写法

    RGB 颜色值是这样规定的:rgb(red, green, blue)。每个参数 (red、green 以及 blue) 定义颜色的强度,可以是介于 0 与 255 之间的整数,或者是百分比值(从 0% 到 100%)。
    代码示例:
    <h1 style="color:rgb(255,0,0)">测试</h1>

    (4).HSL圆柱坐标系统写法

    HSL 指的是 hue(色相)、saturation(饱和度)、lightness(明度) – 表示颜色柱面坐标表示法。HSL 颜色值是这样规定的:hsl(hue, saturation, lightness)。Hue 是色盘上的度数(从 0 到 360) – 0 (或 360) 是红色,120 是绿色,240 是蓝色。Saturation 是百分比值;0% 意味着灰色,而 100% 是全彩。Lightness 同样是百分比值;0% 是黑色,100% 是白色。
    代码示例:
    <h1 style="color:hsl(0, 100%,50%)">测试</h1>

    2.透明色

    那么透明色如何表示呢?
    RGBA颜色值、HSLA 颜色值分别是 RGB颜色值、HSL 颜色值的扩展,带有一个 alpha 通道 – 它规定了对象的不透明度。alpha 参数是介于 0.0(完全透明)与 1.0(完全不透明)的数字。
    代码示例:
    <h1 style="color:rgba(255,0,0,0.3)">测试</h1>
    <h1 style="color:hsla(0, 100%,50%,0.3)">测试</h1>

    3.透明效果的实现

    (1).通过设置对象背景rgba、hsla的alpha参数,可实现背景透明,文字不透明的效果。

    (2).通过设置对象的 opacity,取值0~1,可实现背景透明,文字也透明的效果。如:

    .demo{
      padding: 25px;
      background-color:#000000;
      opacity: 0.2;
    }
    

    4.currentColor如何来用

    MDN的解释:currentColor代表了当前元素被应用上的color颜色值。 使用它可以将当前这个颜色值应用到其他属性上,或者嵌套元素的其他属性上。

    以这么理解,currentColor相当于一个变量,用来储存当前元素的color值,当然color值可以是设定的也可以是继承而来的,然后你就可以在当前元素中使用它,它也随着color值的改变而改变。
    情形1:

    <div>饥人谷</div>
    
    div{
        color: red;
    }
    

    此时,<p>标签currentColor的值为red。
    情形2:

    <div> <p>饥人谷</p></div>
    
    div{
        color: red;
    }
    

    此时,<p>标签currentColor的值为red。
    情形3:

    <html><div> <p>饥人谷</p></div></html>
    
    //无CSS
    

    此时,父级元素也没有指定颜色,那它的父级元素就会从父级的父级去继承,直到文档的根结点html标签都还没显示指定一个颜色,就应用上浏览器默认的颜色。
    理解了currentColor的概念,应用起来就简单了,直接当做颜色值调用即可,但是要记住当前元素中使用的是当前元素的color值。如:

    <div>饥人谷</div>
    
    div{
        color: red;
        border: 4px solid currentColor;
    }
    

    直接调用设置边框颜色。

    相关文章

      网友评论

        本文标题:CSS之Color

        本文链接:https://www.haomeiwen.com/subject/jyjblxtx.html