首页 > 其他分享 >SVG滤镜波浪动画效果

SVG滤镜波浪动画效果

时间:2023-02-09 12:34:10浏览次数:44  
标签:box 动画 container center SVG content 滤镜 秉笔直书 挫折


今天给大家分享一个用SVG实现的滤镜波浪动画效果,效果如下:

SVG滤镜波浪动画效果_SVG

以下是代码实现,欢迎大家复制粘贴和收藏。

<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SVG滤镜波浪动画效果</title>
<style>
* {
font-family: '微软雅黑', sans-serif;
box-sizing: border-box;
}

body {
display: flex;
align-items: center;
justify-content: center;
background: #000;
min-height: 100vh;
}

.container {
position: relative;
display: flex;
justify-content: center;
align-items: center;
}

.container .box {
position: relative;
width: 300px;
height: 400px;
color: #fff;
display: flex;
align-items: center;
justify-content: center;
-webkit-box-reflect: below 15px linear-gradient(transparent, transparent, rgba(0, 0, 0, 0.2));
margin: 0 30px;
}

.container .box:hover {
color: #000;
}

.container .box::before {
content: '';
position: absolute;
left: -10px;
top: -10px;
width: 100%;
height: 100%;
border: 4px solid #fff;
background: #000;
filter: url(#wavy);
}

.container .box:hover:before {
background: #fff;
transition: 0.5s;
}

.container .box::after {
content: '';
position: absolute;
left: -10px;
top: -10px;
width: 50%;
height: 100%;
border: 4px solid #fff;
border-right: none;
background: rgba(255, 255, 255, 0.1);
filter: url(#wavy);
}

.container .box .content {
position: absolute;
padding: 20px;
text-align: center;
transition: 0.5s;
}
p{
text-align: justify;
}

svg {
width: 0;
height: 0;
}
</style>
</head>

<body>
<div class="container">
<div class="box">
<div class="content">
<h2>Water Wave Text</h2>
<p>
挫折之花,绽放于与命运的抗衡。司马迁因秉笔直书,“不溢美,不隐恶”,而遭受腐刑,然而他在狱中却坚强的与命运作斗争,面对挫折,他选择了勇敢;面对挫折,他选择了发愤;面对挫折,他选择了秉笔直书。终于,他“着成信史照尘寰”,留下了千古美名!让挫折之花绽放了两千年!
</p>
</div>
</div>
<div class="box">
<div class="content">
<h2>Water Wave Text</h2>
<p>
挫折之花,绽放于与命运的抗衡。司马迁因秉笔直书,“不溢美,不隐恶”,而遭受腐刑,然而他在狱中却坚强的与命运作斗争,面对挫折,他选择了勇敢;面对挫折,他选择了发愤;面对挫折,他选择了秉笔直书。终于,他“着成信史照尘寰”,留下了千古美名!让挫折之花绽放了两千年!
</p>
</div>
</div>
<div class="box">
<div class="content">
<h2>Water Wave Text</h2>
<p>
挫折之花,绽放于与命运的抗衡。司马迁因秉笔直书,“不溢美,不隐恶”,而遭受腐刑,然而他在狱中却坚强的与命运作斗争,面对挫折,他选择了勇敢;面对挫折,他选择了发愤;面对挫折,他选择了秉笔直书。终于,他“着成信史照尘寰”,留下了千古美名!让挫折之花绽放了两千年!
</p>
</div>
</div>
</div>
<svg>
<filter id="wavy">
<feTurbulence x="0" y="0" baseFrequency="0.02" numOctaves="5" seed="2">
<animate attributeName="baseFrequency" dur="60s" values="0.02;0.05;0.02" repeatCount="indefinite">
</animate>
</feTurbulence>
<feDisplacementMap in="SourceGraphic" scale="30"></feDisplacementMap>
</filter>
</svg>
</body>

</html>

标签:box,动画,container,center,SVG,content,滤镜,秉笔直书,挫折
From: https://blog.51cto.com/u_15959833/6046800

相关文章

  • canvas + Cesium 动画图片材质
    letosm=Cesium.createOpenStreetMapImageryProvider({url:"https://a.tile.openstreetmap.org/",})letviewer=newCesium.Viewer(thi......
  • Qt动画
    一、介绍类名功能介绍QAbstractAnimation动画基类提供基本的动画属性和接口,它有两个子类QVariantAnimation和QAnimationGroup。QAbstractAnimation是其......
  • vue3引入SvgIcon
    这里使用vite-plugin-svg-icons插件yarnaddvite-plugin-svg-icons-D#ornpmivite-plugin-svg-icons-D#orpnpminstallvite-plugin-svg-icons-D在vite.con......
  • JavaScript中和动画相关的几个事件
    JavaScript中有以下几种与动画相关的事件:requestAnimationFrame这个事件可以在浏览器重绘之前触发,通常用于制作高性能动画。下面是一个使用requestAnimationFrame来制作简......
  • [原创]使用混合视图目标后进行控制 动画不连贯问题研究探索
    关于混合设置视图目标的问题,我这场景里面有10个pawn,我用一个按钮点击然后尝试使用混合设置目标切换不同角度,然后调用控制就可以基于这个角度进行旋转啥的,但是调......
  • 动画学leetcode算法!分享iOSApp算法宝开发过程中的一些想法!
    初来乍到,很喜欢这里的分享氛围,观摩了很多大佬的文章,也分享下自己刚开发的一款App:算法宝。在算法宝App里一共制作了70个leetcode算法动画。目前全部免费,无广告。目前只支持......
  • MAUI新生6.9-控件辅助功能①:动画Animation
    一、基本使用1、MAUI为所有VisualElement对象,定义了一系列动画扩展方法,所以控制动画的原理很简单,在UI层通过x:Name定义视觉对象的变量名(或在后台代码中直接创建视觉对象),然......
  • vue3如何改变svg字体大小,以及子组件如何改变父组件背景色
    提问:1、hanzi-write生成的svg只能使用px像素大小,使用rem无效。2、子组件无法修改父组件背景色。svg问题: <template>   <divclass="header"> ......
  • qt实现类似windows的屏幕保护(小球碰撞动画)
    最近看了篇文章啊,讲的就是让小球进行移动,可能别人做的是仿真啊,用到了太多的数学函数,什么运动学,各种的,我就想着,自己能不能使用qt实现下这种效果,就是有一个球不停的移动,当碰......
  • Android 动画
    在App中合理地使用动画能够获得友好愉悦的用户体验,Android中的动画有View动画、属性动画、帧动画、布局动画、转场动画等,在5.x以后有又新增了矢量动画,这些动画在平常开发中......