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

溫馨提示×

溫馨提示×

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

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

怎么用純CSS實現接扎啤的特效

發布時間:2022-02-28 15:31:21 來源:億速云 閱讀:145 作者:小新 欄目:web開發

這篇文章主要介紹了怎么用純CSS實現接扎啤的特效,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

  代碼解讀

  定義dom,容器中包含一個表示酒桶的.keg元素和表示啤酒杯的.glass元素。酒桶有2個子元素,.handle表示把手,.pipe表示出水管,酒杯有1個表示啤酒的子元素.beer:

  <divclass="container">

  <divclass="keg">

  <spanclass="handle"></span>

  <spanclass="pipe"></span>

  </div>

  <divclass="glass">

  <spanclass="beer"></span>

  </div>

  </div>

  居中顯示:

  body{

  margin:0;

  height:100vh;

  display:flex;

  justify-content:center;

  background:linear-gradient(

  lightslategray300px,

  #333300px

  );

  }

  定義容器尺寸和偽元素的共有屬性:

  .container{

  width:700px;

  height:300px;

  position:relative;

  }

  .container*::before,

  .container*::after{

  content:'';

  position:absolute;

  }

  畫出酒桶:

  .keg{

  position:absolute;

  width:90px;

  height:200px;

  background:linear-gradient(

  toright,

  #77770px,

  #55570px

  );

  bottom:0;

  left:310px;

  }

  畫出出水管和它的支架:

  .keg.pipe{

  position:absolute;

  width:10px;

  height:40px;

  background-color:#ccc;

  top:33px;

  left:10px;

  }

  .keg.pipe::before{

  width:40px;

  height:20px;

  background:

  radial-gradient(

  circleat10px10px,

  #eee7px,

  #ccc7px,#ccc10px,

  transparent10px

  ),

  linear-gradient(

  #ccc50%,

  #99950%

  );

  border-radius:10px;

  top:-2px;

  left:-5px;

  }

  畫出把手:

  .keg.handle{

  position:absolute;

  border-style:solid;

  border-width:50px10px010px;

  border-color:blacktransparenttransparenttransparent;

  top:-10px;

  left:5px;

  }

  .keg.handle::before{

  width:20px;

  height:10px;

  background-color:#ccc;

  top:-60px;

  left:-10px;

  border-radius:5px5px00;

  }

  .keg.handle::after{

  width:10px;

  height:20px;

  background-color:#ccc;

  top:-20px;

  left:-5px;

  }

  畫出酒杯:

  .glass{

  position:absolute;

  width:70px;

  height:100px;

  color:rgba(255,255,255,0.3);

  background-color:currentColor;

  bottom:0;

  left:300px;

  border-radius:5px;

  }

  .glass::before{

  width:50px;

  height:40px;

  border:10pxsolid;

  top:20px;

  right:-20px;

  border-radius:040%40%0;

  clip-path:inset(00072%);

  }

  畫出杯中的啤酒和泡沫:

  .beer{

  position:absolute;

  width:60px;

  height:80px;

  background-color:rgba(255,206,84,0.8);

  bottom:15px;

  left:5px;

  border-radius:005px5px;

  border-top:solidrgba(255,206,84,0.8);

  }

  .beer::before{

  width:inherit;

  height:15px;

  background-color:#eee;

  top:-15px;

  border-radius:5px5px00;

  }

  接下來制作動畫。

  增加酒杯把手被壓下的動畫效果:

  .keg.handle{

  transform-origin:center50px;

  animation:handle5sinfinite;

  }

  @keyframeshandle{

  10%,60%{

  transform:rotate(0deg);

  }

  20%,50%{

  transform:rotate(-90deg);

  }

  }

  增加啤酒被斟滿的動畫效果:

  .beer{

  animation:fillup5sinfinite;

  }

  @keyframesfillup{

  0%,20%{

  height:0px;

  border-width:0px;

  }

  40%{

  height:40px;

  }

  80%,100%{

  height:80px;

  border-width:5px;

  }

  }

  增加啤酒泡沫泛起的動畫效果:

  .beer::before{

  animation:

  wave0.5sinfinitealternate,

  fillup-foam5slinearinfinite;

  }

  @keyframesfillup-foam{

  0%,20%{

  top:0;

  height:0;

  }

  60%,100%{

  top:-15px;

  height:15px;

  }

  }

  @keyframeswave{

  from{

  transform:skewY(-3deg);

  }

  to{

  transform:skewY(3deg);

  }

  }

  增加啤酒從出水口流出的效果:

  .keg.pipe::after{

  width:10px;

  background-color:rgba(255,206,84,0.5);

  animation:flow5sinfinite;

  }

  @keyframesflow{

  0%,15%{

  top:40px;

  height:0;

  }

  20%{

  height:115px;

  }

  40%{

  height:75px;

  }

  55%{

  top:40px;

  height:50px;

  }

  60%,100%{

  top:80px;

  height:0;

  }

  }

  最后,增加酒杯滑動的效果:

  .glass{

  animation:slide5seaseinfinite;

  }

  @keyframesslide{

  0%{

  left:0;

  filter:opacity(0);

  }

  20%,80%{

  left:300px;

  filter:opacity(1);

  }

  100%{

  left:600px;

  filter:opacity(0);

  }

  }

感謝你能夠認真閱讀完這篇文章,希望小編分享的“怎么用純CSS實現接扎啤的特效”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

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

css
AI

桐梓县| 延庆县| 罗源县| 来安县| 特克斯县| 吴旗县| 乐业县| 景德镇市| 新安县| 汉沽区| 宣恩县| 鄂温| 大渡口区| 盘山县| 边坝县| 偃师市| 安宁市| 内黄县| 乌鲁木齐县| 鄂托克前旗| 澄城县| 商都县| 江津市| 枞阳县| 武威市| 新蔡县| 凉城县| 白玉县| 秭归县| 阿拉善盟| 荣成市| 屏东市| 中山市| 莫力| 扎鲁特旗| 厦门市| 巧家县| 东丽区| 南陵县| 县级市| 阿拉善盟|