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

溫馨提示×

溫馨提示×

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

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

怎么使用CSS繪制一個可愛卡通獅子動畫

發布時間:2022-04-22 13:54:56 來源:億速云 閱讀:143 作者:iii 欄目:web開發

這篇文章主要介紹了怎么使用CSS繪制一個可愛卡通獅子動畫的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇怎么使用CSS繪制一個可愛卡通獅子動畫文章都會有所收獲,下面我們一起來看看吧。

怎么使用CSS繪制一個可愛卡通獅子動畫

演示

正文

基礎繪制

我們在先來康康這只獅子有哪些部分組成:

怎么使用CSS繪制一個可愛卡通獅子動畫

通過以上視圖,這只獅子是由 耳朵+眼睛+鼻子+胡須+嘴巴+鬃毛+前腿+爪子+尾巴 這些部分組成。相信大家不難看出很多部位可以通過非常簡單做矩形和圓角句可以完成他們。比如眼睛,就是兩個圓形堆疊而成,具體可以看上面的代碼演示,這里對于這些基礎圖形就不做過多講述了。

接下來,我們就具體說說,一些不好繪制的圖形吧。

耳朵

可以看到它似半圓形,像是花瓣一樣,常規方法來做的話肯定是不好實現的, 但可以通過  clip-path 屬性,它是使用裁剪方式創建元素的可顯示區域,其區域內的部分顯示,區域外的隱藏。而繪制耳朵,我們就利用這區域裁剪,其 ellipse 橢圓裁切的方法,其 兩個傳入至分別表示其裁切的半徑,而at后的兩個值則代表裁切的x與y軸的坐標。

.ear {
    width: 70px;
    height: 70px;
    position: absolute;
    top: 10px;
    background-color: var(--skin-color);
    z-index: 9;
    border-radius: 40px;
    clip-path: ellipse(100% 100% at -20% -10%);
}

怎么使用CSS繪制一個可愛卡通獅子動畫

同理,那個類似于半圓的身體也是通過 clip-path: ellipse 來實現的,當然不止于此他可以裁剪出任何圖形來,可以說非常的強大了。

鼻子

鼻子是一個三角形而構成,css繪制三角形也是一個小技巧,就是把 widthheight 設為 0,單純使用 border 屬性來完成,設置 border-width 使其代替塊的寬高,但其塊的內部是由四個小三角形拼成的矩形了,然后因為排布是上右下左的順序,所以只要給其中一個角的顏色賦值即可實現一個三角形。

.nose {
    width: 0px;
    height: 0px;
    border-width: 20px 30px;
    border-style: solid;
    border-color: var(--eye-color) transparent transparent transparent;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    margin-top: 40px;
    z-index: 3;
}

怎么使用CSS繪制一個可愛卡通獅子動畫

尾巴

尾部主要也是利用  border 來實現,畫一個矩形div塊,讓他旋轉一定角度,然后只繪制其中一個邊框,然后再使用  border-radius: 40% 50% , 給它彎曲的一種感覺就大功告成了。

.tail {
    width: 320px;
    height: 320px;
    position: absolute;
    top: -137px;
    border-style: solid;
    border-width: 30px;
    border-radius: 40% 50%;
    border-color: transparent var(--tail-color) transparent transparent;
    transform: rotate(125deg);
    left: -180px;
}

怎么使用CSS繪制一個可愛卡通獅子動畫

動畫制作

搖尾巴

尾部的力量都源于尾巴根,所以要從根部進行一個輕微搖擺的旋轉動畫,所以,我們就利用到了 transform-origin 屬性,它可以讓你更改一個元素變形的原點,如,根部發力那么就直接設置成  transform-origin: 50% 100% 也可以寫成   transform-origin: center bottom

第一個參數代表了定義變形中心距離盒模型的左側的偏移值。

keywordvalue
left0%
center50%
right100%

第二個參數代表了定義變形中心距離盒模型的頂的偏移值。

keywordvalue
top0%
center50%
bottom100%

后面的動畫微微的旋轉偏移就看下方的代碼塊了,非常簡單只需要微調一些角度和偏移即可。這里再多補充一句,transform 的變換必須是盒模型定位的元素哦。

.tail {
  // ...
  animation: 1s wagging ease-in-out infinite alternate forwards;
  transform-origin: 50% 100%;
}

@keyframes wagging {
  0% {
    transform: rotate(125deg) translateX(0) translateY(0px);
  }
  100% {
    transform: rotate(130deg) translateX(15px) translateY(-15px);
  }
}

眨眼睛

眼睛一眨一眨會顯得獅子會更生動,但是如果通過縮小高度做動畫實現的畫,會顯得非常難看因為連眼白眼珠都會壓縮變形。所以我們依然是通過 clip-path 屬性,利用 ellipse 方法把裁剪范圍從頂部和底部往中間延伸,直至2%留一道縫隙即可。

.eye {
  // ...
  animation: 4s blinking infinite forwards;
  overflow: hidden;
}
@keyframes blinking {
  0%,
  40%,
  80% {
    clip-path: ellipse(100% 100% at 50% 48%);
  }
  60%,
  100% {
    clip-path: ellipse(100% 2% at 50% 48%);
  }
}

關于“怎么使用CSS繪制一個可愛卡通獅子動畫”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“怎么使用CSS繪制一個可愛卡通獅子動畫”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

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

css
AI

安化县| 威信县| 北辰区| 富蕴县| 鸡西市| 乌兰察布市| 永清县| 保靖县| 原平市| 宣威市| 临海市| 黄龙县| 将乐县| 靖边县| 通辽市| 衡东县| 富顺县| 托里县| 呼玛县| 安远县| 象州县| 尖扎县| 吉隆县| 德钦县| 安岳县| 邛崃市| 仙桃市| 修武县| 南丰县| 泗阳县| 沁水县| 施甸县| 项城市| 萍乡市| 启东市| 汉阴县| 宜州市| 二连浩特市| 淳化县| 东港市| 丽江市|