首頁 > web前端 > css教學 > css3中新增加的顏色模式有哪些

css3中新增加的顏色模式有哪些

青灯夜游
發布: 2023-01-04 09:34:29
原創
3136 人瀏覽過

css新增了3種顏色模式:1、RGBA模式,是在RGB模式上新增了Alpha透明度,例「rgba(255,0,0,0.5)」;2、HSL模式,範例「hsl(360,50%,50%)」;3、HSLA模式,是在HSL模式上新增了Alpha透明度。

css3中新增加的顏色模式有哪些

本教學操作環境:windows7系統、CSS3版、Dell G3電腦。

一、CSS1&2顏色表示法(W3C標準)


1、Color name  顏色名稱方式(用顏色關鍵字表示對應的顏色。)

例如:red(紅色)、blue(藍色)、pink(粉紅色)

優點:方便快速且特定顏色比較準確

缺點:

  表示顏色數量有限。

      不支援透明色.

2、HEX方式十六進位方式(使用十六進位表示色)

語法:

#RRGGBB 或 #RGB
登入後複製

取值:

  RR: 紅色值。十六進位正整數 

  GG: 綠色值。十六進位正整數

  BB: 藍色值。十六進位正整數

取值範圍:00-FF

例如:#FF0000紅色 #FFFF00 黃色。

優點:表示顏色種類多,使用較方便

缺點:

  16進位單位換算很成問題

  不支援透明顏色。

  特定顏色需要工具配合或一定的顏色調配知識

3、RGB方式三原色配色方式

語法

RGB(R,G,B)
登入後複製

取值:

  R: 紅色值。正整數 | 百分數

  G: 綠色值。正整數 | 百分數

  B: 藍色值。正整數| 百分數

取值範圍:0~255或0%~100%

例如:rgb(255,0,0)紅色rgb(255,255,0)黃色

優點:表示顏色種類多,使用較方便

缺點:

  不支援透明顏色

  特定顏色需要工具配合或一定的顏色調配知識

#二、CSS3 新增顏色表示法



##1、RGBA模式

此色彩模式與RGB相同,但在RGB模式上新增了Alpha透明度。 語法:

RGBA(R,G,B,A)
登入後複製

取值:

#  R: 紅色值。正整數 | 百分數

  G: 綠色值。正整數 | 百分數

  B: 藍色值。正整數 | 百分數

  A: Alpha透明度。取值0~1之間。

例如:rgba(255,0,0,0.5)半透明紅色

<style type="text/css">
    body{background:rgba(255,0,0,1)}
    div{width:300px;
        height:300px;
        background:rgba(0,0,255,0.4);
        position:absolute;
        top:0;
        left:0;
    }
</style>
<body>
    猜猜我在哪里
    <div></div>
</body>
登入後複製

2、HSL模式

# (色輪模式沒有透明度)語法:

HSL(H,S,L)
登入後複製

取值:

  H:Hue(色調)。 –0(或360)表示紅色,120表示綠色,240表示藍色,也可取其他數值來指定顏色。值為:0 - 360

  S: Saturation(飽和度)。值為:0.0% - 100.0%

  L: Lightness(亮度)。取值為:0.0% - 100.0%

例如:

hsl(360,50%,50%)

紅色

<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">&lt;style type=&quot;text/css&quot;&gt; body{background:rgba(0,0,255,0.5);} div{width:300px; height:300px; background:hsl(140,50%,50%); position:absolute; top:0; left:0; } &lt;/style&gt; &lt;body&gt; &lt;div&gt;&lt;/div&gt; &lt;/body&gt;</pre><div class="contentsignin">登入後複製</div></div>

3、HSLA模式(色輪模式有透明度)

語法:

HSLA(H,S,L,A)
登入後複製
取值:  H:Hue (色調)。 –0(或360)表示紅色,120表示綠色,240表示藍色,也可取其他數值來指定顏色。值為:0 - 360


  S: Saturation(飽和度)。值為:0.0% - 100.0%

  L: Lightness(亮度)。值為:0.0% - 100.0%
  A: Alpha透明度。取值0~1之間。

例如:

hsl(360,50%,50%,0.5

) 紅色

<style>
        body{background:HSL(0,100%,50%)}
        div{width:300px;
            height:300px;
            background:HSLA(230,100%,50%,0);
            position:absolute;
            top:0;
            left:0;
        }
    </style>
    </head>
    <body>
        猜猜我在哪里
        <div></div>
    </body>
登入後複製

(學習影片分享:css影片教學

三、其他屬性

#########1、transparent############特殊顏色值,表示透明色。可以直接當做顏色使用。 ######例如:color:transparent  設定字型顏色為透明###
<style type="text/css">
    body{background:hsl(270,100%,50%)}
    p{
        font-size:50px;
        font-family:"黑体";
        /*浏览器私有属性*/
        -webkit-text-fill-color:transparent;/*设置文本透明*/
        /*使用rgba(0,0,0,0);也可以实现全透明模式*/
        -webkit-text-stroke:2px yellow;/*将文本设置透明,再设置个边框后就实现镂空字了*/
        /*W3C标准属性*/
        /*text-fill-color:transparent;*/
        /*text-stroke:2px yellow;*/
    
    }
</style>
<body>
    <p>2012年过去了,最忙的是元芳,你怎么看?</p>
</body>
登入後複製
###2、###Opacity######屬性#########作用:設定元素的透明度。 ######取值:0~1之間###

注意:对于尚不支持opacity属性的IE浏览器

滤镜:filter:alpha(opacity=50) 仅限IE

<style>
    body{background:red}
    div{background:blue;
        width:300px;
        height:300px;
        opacity:0.5;
        position:absolute;
        top:0;
        left:0
    }
</style>
</head>
<body>
    看到我你就成功了
    <div></div>
</body>
登入後複製

四、CSS3 颜色使用实例


background-image: -ms-linear-gradient(top, #D35644 0%, #31264D 100%) !important;/* Mozilla Firefox */ 
     background-image: -moz-linear-gradient(top, #D35644 0%, #31264D 100%) !important;/* Opera */ 
     background-image: -o-linear-gradient(top, #D35644 0%, #31264D 100%) !important;/* Webkit (Safari/Chrome 10) */ 
     background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #D35644), color-stop(1, #31264D)) !important;/* Webkit (Chrome 11+) */ 
     background-image: -webkit-linear-gradient(top, #D35644 0%, #31264D 100%) !important;/* W3C Markup, IE10 Release Preview */ 
     background-image: linear-gradient(to bottom, #D35644 0%, #31264D 100%) !important; }
登入後複製

1、模拟渐变效果

使用透明度来模拟渐变

<style>
    div{height:30px}
    div:nth-child(1){background:HSLA(120,100%,50%,0.1)}
    div:nth-child(2){background:HSLA(120,100%,50%,0.2)}
    div:nth-child(3){background:HSLA(120,100%,50%,0.3)}
    div:nth-child(4){background:HSLA(120,100%,50%,0.4)}
    div:nth-child(5){background:HSLA(120,100%,50%,0.5)}
    div:nth-child(6){background:HSLA(120,100%,50%,0.6)}
    div:nth-child(7){background:HSLA(120,100%,50%,0.7)}
    div:nth-child(8){background:HSLA(120,100%,50%,0.8)}
    div:nth-child(9){background:HSLA(120,100%,50%,0.9)}
    div:nth-child(10){background:HSLA(120,100%,50%,1.0)}
</style>
</head>
<body>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</body>
登入後複製

使用饱和度模拟渐变

<style>
            div{height:30px}
            div:nth-child(1){background:HSLA(120,100%,50%,1)}
            div:nth-child(2){background:HSLA(120,90%,50%,1)}
            div:nth-child(3){background:HSLA(120,80%,50%,1)}
            div:nth-child(4){background:HSLA(120,70%,50%,1)}
            div:nth-child(5){background:HSLA(120,60%,50%,1)}
            div:nth-child(6){background:HSLA(120,50%,50%,1)}
            div:nth-child(7){background:HSLA(120,40%,50%,1)}
            div:nth-child(8){background:HSLA(120,30%,50%,1)}
            div:nth-child(9){background:HSLA(120,20%,50%,1)}
            div:nth-child(10){background:HSLA(120,10%,50%,1)}
        </style>
    </head>
    <body>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
    </body>
</html>
登入後複製

使用亮度来实现模拟渐变

<style>
    div{height:30px}
    div:nth-child(1){background:HSLA(120,100%,100%,1)}
    div:nth-child(2){background:HSLA(120,100%,90%,1)}
    div:nth-child(3){background:HSLA(120,100%,80%,1)}
    div:nth-child(4){background:HSLA(120,100%,70%,1)}
    div:nth-child(5){background:HSLA(120,100%,60%,1)}
    div:nth-child(6){background:HSLA(120,100%,50%,1)}
    div:nth-child(7){background:HSLA(120,100%,40%,1)}
    div:nth-child(8){background:HSLA(120,100%,30%,1)}
    div:nth-child(9){background:HSLA(120,100%,20%,1)}
    div:nth-child(10){background:HSLA(120,100%,10%,1)}
</style>
</head>
<body>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</body>
登入後複製

使用背景颜色:

<style>
#div1 { width:200px; height:200px; border:1px solid #333;
background:-moz-linear-gradient(top, red, yellow);
background:-webkit-linear-gradient(top, red, yellow);
background:-ms-linear-gradient(top, red, yellow);
background:linear-gradient(top, red, yellow);
-ms-filter:"progid:DXImageTransform.Microsoft.gradient (GradientType=0, startColorstr=red, endColorstr=yellow)";
+background:#f9f9f9;/*兼容IE9,8,7*/
}
</style>

</head>

<body>

<div id="div1"></div>

</body>
登入後複製

更多编程相关知识,请访问:编程视频!!

以上是css3中新增加的顏色模式有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板