当前位置: 首页 > Web前端 > HTML5

前端日常实战:119#视频演示如何使用纯CSS制作扎啤动画(包含2个视频)

时间:2023-04-05 23:31:04 HTML5

效果预览在当前页面点击右侧“点击预览”按钮进行预览,点击全屏预览的链接。https://codepen.io/comehop??e/pen/rZeOQp互动视频本视频为互动视频,您可以随时暂停视频,编辑视频中的代码。请使用chrome、safari、edge打开观看。第1部分:https://scrimba.com/p/pEgDAM/c86mdUZ第2部分:https://scrimba.com/p/pEgDAM/cmVNbTW源码下载每日前端实战系列的所有源码请下载自github:https://github.com/comehop??e/front-end-daily-challenges代码解释定义了dom,容器包含一个代表酒桶的.keg元素和代表啤酒杯的.glass元素。barrel有2个子元素,.handle表示把手,.pipe表示出水管,wineglass有1个子元素.beer表示啤酒:

居中显示:body{margin:0;高度:100vh;显示:弹性;证明内容:居中;background:linear-gradient(lightslategray300px,#333300px);}定义容器大小和伪元素的公共属性:.container{width:700px;高度:300px;位置:相对;}.container*::before,.container*::after{content:'';position:absolute;}画桶:.keg{position:absolute;宽度:90px;高度:200px;背景:线性渐变(向右,#77770px,#55570px);底部:0;left:310px;}绘制水管及其支架:.keg.pipe{position:absolute;宽度:10px;高度:40px;背景颜色:#ccc;顶部:33px;left:10px;}.keg.pipe::before{width:40px;高度:20px;背景:径向渐变(圆形10px10px,#eee7px,#ccc7px,#ccc10px,透明10px),线性渐变(#ccc50%,#99950%);边界半径:10px;顶部:-2px;left:-5px;}画出把手:.keg.handle{position:absolute;边框样式:实心;边框宽度:50px10px010px;border-color:黑色透明透明透明;顶部:-10px;left:5px;}.keg.handle::before{width:20px;高度:10px;背景色:#ccc;顶部:-60px;左:-10px;border-radius:5px5px00;}.keg.handle::after{width:10px;高度:20px;背景色:#ccc;顶部:-20px;left:-5px;}画出酒杯:.glass{position:absolute;宽度:70px;高度:100px;颜色:RGBA(255、255、255、0.3);背景色:cur出租颜色;底部:0;左:300px;border-radius:5px;}.glass::before{width:50px;高度:40px;边框:10px实心;顶部:20px;40%40%0;clip-path:inset(00072%);}画出杯子里的啤酒和泡沫:.beer{position:absolute;宽度:60px;高度:80px;背景色:rgba(255,206,84,0.8);底部:15px;左:5px;边界半径:005px5px;border-top:solidrgba(255,206,84,0.8);}.beer::before{宽度:继承;高度:15px;背景色:#eee;顶部:-15px;border-radius:5px5px00;}接下来制作动画增加酒杯把手被按下的动画效果:.keg.handle{transform-origin:center50px;动画:无限处理5秒;}@keyframes处理{10%,60%{变换:旋转(0度);}20%,50%{变换:旋转(-90deg);}}增加啤酒灌满动画效果:.beer{animation:fillup5sinfinite;}@keyframesfillup{0%,20%{height:0px;边框宽度:0px;}40%{高度:40px;}80%,100%{高度:80px;边框宽度:5px;}}增加啤酒泡沫的动画效果:.beer::before{animation:wave0.5sinfinitealternate,fillup-foam5slinearinfinite;}@keyframesfillup-foam{0%,20%{top:0;高度:0;}60%,100%{顶部:-15px;高度:15px;}}@keyframeswave{from{transform:skewY(-3deg);}到{变换:偏斜(3度);}}增加啤酒从喷口流出的效果:.keg.pipe::after{width:10px;背景颜色:rgba(255、206、84、0.5);动画:无限流动5秒;}@keyframes流{0%,15%{top:40px;高度:0;}20%{高度:115px;}40%{高度:75px;}55%{顶部:40px;高度:50px;}60%,100%{顶部:80px;高度:0;}}最后添加玻璃的滑动效果:.glass{animation:slide5seaseinfinite;}@keyframesslide{0%{left:0;过滤器:不透明度(0);}20%,80%{左:300px;过滤器:不透明度(1);}100%{左:600px;过滤器:不透明度(0);}}你完成了!