中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CSS3中驚艷的gradient

發布時間:2020-06-07 15:09:18 來源:網絡 閱讀:618 作者:張濤澤 欄目:網絡安全

一、stop位置

stop位置,也就是開始漸變的位置。

1)stop位置不同

將會出現過渡的效果,#fb3開始漸變的位置是20%,在20%之前就只有#fb3,到80%就是#58a

div.transition1 {
  background: linear-gradient(#fb3 20%, #58a 80%);
}

CSS3中驚艷的gradient

 

2)stop位置相同

就不會有過渡的效果,因為#58a開始過渡的位置與#fb3的相同,那么這兩個顏色之間就沒有了間隔。

div.transition2 {
  background: linear-gradient(#fb3 50%, #58a 50%);
}

CSS3中驚艷的gradient

 

3)stop位置為0

將會和前一組的stop值相同,下面的代碼就和上面的50%是一樣的。

div.transition3 {
  background: linear-gradient(#fb3 50%, #58a 0);
}

 

4) 通過設置0,實現條紋色

#fb3的起始漸變是33.3%,給第二個顏色#58a設置為0,使得兩個顏色之間沒有間隔,第三種顏色yellowgreen設置為0,后面的就全部顯示這個顏色。

div.transition4 {
  background: linear-gradient(#fb3 33.3%, #58a 0, #58a 66.6%, yellowgreen 0);
}

CSS3中驚艷的gradient

 

二、方向或角度

1)設置條紋顯示方向

有四個值,left、right、top、bottom。

to top, to bottom, to left 和 to right這些值會被轉換成角度0deg, 180deg, 270deg, 90deg。

left: 設置左邊為漸變起點的橫坐標值。   right:設置右邊為漸變起點的橫坐標值。

top: 設置頂部為漸變起點的縱坐標值。   bottom: 設置底部為漸變起點的縱坐標值。

div.angle1 {
  background: linear-gradient(to right, #fb3 50%, #58a 0);
  background-size: 30px 100%;
}

CSS3中驚艷的gradient

 

2)斜條紋

1. 將角度設置為45°,整體就會斜過來,出現一個×××的三角形,但并不是條紋

div.angle2 {
  background: linear-gradient(45deg, #fb3 50%, #58a 0);
  background-size: 30px 30px;
}

CSS3中驚艷的gradient

2. 如果要設置條紋的話,得要先向下面第一張圖那樣,有兩個位置顯示×××,兩個位置顯示藍色,第二張圖是個全景圖。

CSS3中驚艷的gradient  CSS3中驚艷的gradient

25%內是×××,然后到50%是藍色,再到是75%×××,最后是藍色。

div.angle3 {
  background: linear-gradient(45deg, #fb3 25%, #58a 0, #58a 50%, #fb3 0, #fb3 75%, #58a 0);
  background-size: 30px 30px;
}

 

3)條紋的計算方式

上面的效果只是條紋的一種展現方式,但都可以通過計算得出,下圖是個30*30的正方形。

CSS3中驚艷的gradient

上圖中假設第一個直角三角形的邊長是15px,而且等邊,計算從直角對應的高,也就是首次漸變的值。

根據勾股定理可以得出斜邊的值為 可以得出15√2,在根據面積的計算可以得出15*15 = 高*15√2,最后得出圖中的值。

正方形的對角線長度為30√2,剛剛計算出的高再除以這個值,等于25%,也就是上面代碼中的值。

 

三、復雜條紋

1)網格

通過合并多組gradient,可以組合出桌布效果。

div.complex1 {
  background: white;
  background-image: linear-gradient(90deg, rgba(200, 0, 0, .5) 50%, transparent 0), linear-gradient(rgba(200, 0, 0, .5) 50%, transparent 0);
  background-size: 30px 30px;
}

第一組gradient先旋轉90°,transparent 是透明,豎起來,第二組還是橫著的。

CSS3中驚艷的gradient

 

2)波爾卡圓點

通過設置兩個“background-position”,達到波爾卡圓點效果,其中tan是顏色值,新航道托福我誤以為是三角函數中的正切tan了。

div.complex2 {
  background: #655;
  background-image: radial-gradient(tan 30%, transparent 0), radial-gradient(tan 30%, transparent 0);
  background-size: 30px 30px;
  background-position: 0 0, 15px 15px;
}

CSS3中驚艷的gradient

根據上面的語法,有多個屬性。

shape:漸變的形狀,圓形(circle)和橢圓(ellipse),不夠在上面的代碼中我設置ellipse,顯示出來的還是圓形。

position:與background-position或者transform-origin類似。如缺省,默認為中心點。

size:漸變的尺寸大小,參數如下表所示。

CSS3中驚艷的gradient

 

3)棋盤

CSS3中驚艷的gradient

上圖就是一張棋盤,可以看到,通過重復畫出虛線正方形,就能完成棋盤效果。

那么我們就是要通過linear-gradient組合制作出這個正方形中的形狀。

如果是直接畫出兩個正方形,難度比較大,但是如果畫出四個直角三角形,再通過移位,那么就能更容易實現。

CSS3中驚艷的gradient

將紅色正方形中的第1個三角形和綠色正方形中的第2個三角形合并在一起,再把剩下的兩個合并在一起,這樣就能拼成兩個正方形了。

CSS3中驚艷的gradient

div.complex3 {
  background: #eee;
  background-image: linear-gradient(45deg, #bbb 25%, transparent 0), 
    linear-gradient(45deg, transparent 75%, #bbb 0), 
    linear-gradient(45deg, #bbb 25%, transparent 0), 
    linear-gradient(45deg, transparent 75%, #bbb 0);
  background-position: 0 0, 15px 15px, 15px 15px, 30px 30px;
  background-size: 30px 30px;
}

CSS3中驚艷的gradient

上面的代碼就是在實現拼圖,通過設置background-position來做到偏移。

 

4)在線紋理背景實例

css3patterns這個網站中,有許多示例,并且還有源碼。

CSS3中驚艷的gradient

 

四、圓環

圓環是通過先畫一個餅圖,然后再圓中再畫一個與背景色相同的圓,看上去就是圓環了。

<div class="pie"></div>

上面是HTML代碼,非常簡潔。

CSS3中驚艷的gradient  CSS3中驚艷的gradient

1)畫圓

先通過“linear-gradient”,畫一半是綠色,一半是灰色的圓。

CSS3中驚艷的gradient

.pie {
  width: 100px;
  height: 100px;
  border-radius: 100%;
  background: yellowgreen;
  background-image: linear-gradient(to right, transparent 50%, #655 0);
  transform: rotate(20deg);/*只是為了旋轉一下*/}

CSS3中驚艷的gradient

CSS3中驚艷的gradient

 

2)蒙版

在偽元素“::before”中添加一個蒙版,蒙版可以覆蓋右半邊的圓

CSS3中驚艷的gradient

.pie::before {
  content: '';
  display: block;
  margin-left: 50%;
  height: 100%;
  border-radius: 0 100% 100% 0 / 50%;
  background-color: inherit;
  transform-origin: left;
  transform: rotate(.1turn);
}

CSS3中驚艷的gradient

border-radius”:設置四邊形的四角的圓角半徑,上面的值可以分成四個屬性,這樣設置后,蒙版的形狀就是一個半圓。

CSS3中驚艷的gradient

第一個是水平半徑,第二個是垂直半徑。

.pie::before{
    border-top-left-radius: 0 50%;
    border-top-right-radius: 100% 50%;
    border-bottom-right-radius: 100% 50%;
    border-bottom-left-radius: 0 50%;
}

transform-origin”:為了讓蒙版旋轉可以繞著圓的中心點,所以設置了“left”

rotate”:旋轉有四種單位,

CSS3中驚艷的gradient

 

3)旋轉

通過旋轉蒙版可以把要顯示的部分顯示出來,下圖所示,就是旋轉不同的“turn”,顯示不同部分。

CSS3中驚艷的gradient

不過當超過50%的時候,也就是設置“.6turn”的時候,就是下面這幅樣子

CSS3中驚艷的gradient

而不是下面這樣,所以這里需要做些小調整。

CSS3中驚艷的gradient

首先是要將蒙版設置灰色,其次旋轉的不是“.6turn”,而是“.1turn”。

.pie::before {
  transform: rotate(.1turn);

  background: #655;
}

 

4)內圓

在偽對象“::after”中畫一個與背景色一樣的圓。

 

五、箭頭形

1)角度

linear-gradient 中的角度是順時針旋轉的,下表中前面兩個是順時針,后面兩個是逆時針。

h4 {
 background:linear-gradient(10deg, transparent 15px, #2bbf85 0);   
}
10°170°-10°

-170°

CSS3中驚艷的gradientCSS3中驚艷的gradientCSS3中驚艷的gradientCSS3中驚艷的gradient

可以拿起你的手機,旋轉手機試試。

 

2)to <side-or-corner>

除了角度,還可以設置to top, to bottom, to left 和 to right這些值,會被轉換成角度0°, 180°, 270°與 90°

h4 {
 background:linear-gradient(to left bottom, transparent 15px, #2bbf85 0);   
}

還可以組合使用:

left bottomleft topright bottom

right top

CSS3中驚艷的gradientCSS3中驚艷的gradientCSS3中驚艷的gradient

CSS3中驚艷的gradient

 

3)制作箭頭

給兩個linear-gradient分別設置兩個角度,并設置background-size的值,最后兩個背景圖拼在一起就是一個箭頭了。

CSS3中驚艷的gradient

CSS3中驚艷的gradient

h4 {
  width: 200px;
  height: 100px;
  background: linear-gradient(-60deg, transparent 20%, #2bbf85 0) bottom right, linear-gradient(-120deg, transparent 20%, #2bbf85 0) top right;
  background-size: 100% 50%, 100% 50%;
  background-repeat: no-repeat, no-repeat;
}

CSS3中驚艷的gradient

 

最近在自己的一個實際項目中就應用到了linear-gradient,包圍PK的那個圓環,包住歧視那幾個字的箭頭。

CSS3中驚艷的gradient


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

都昌县| 新乡市| 乌恰县| 登封市| 武陟县| 武山县| 潼关县| 桦南县| 越西县| 巴林右旗| 乃东县| 武义县| 孟连| 宿迁市| 遂溪县| 潞西市| 万山特区| 高碑店市| 连云港市| 常宁市| 古田县| 东山县| 湖州市| 梅河口市| 济宁市| 泸州市| 南雄市| 溧阳市| 平山县| 永宁县| 广水市| 阿鲁科尔沁旗| 敦煌市| 乐昌市| 辽宁省| 筠连县| 章丘市| 彩票| 浦城县| 梁平县| 葵青区|