CSS中怎样实现文字断裂的效果,代码是什么
Admin 2022-09-16 群英技术资讯 503 次浏览
创建一个只有元素的部分区域,可以显示的剪切区域。区域内的部分显示,区域外的隐藏。
<h1 data-text="Text Crack"> <span>Text Crack</span> </h1>
使用元素的伪元素复制两份文本,再使用 clip-path 将元素本身、元素的两个伪元素分为3部分,分别对这3部分进行控制
body, html { display: flex; height: 100%; width: 100%; background-color: #000; overflow: hidden; font-family: sans-serif; } h1 { position: relative; margin: auto; font-size: calc(20px + 5vw); font-weight: bold; color: #fff; letter-spacing: 0.02em; text-transform: uppercase; text-shadow: 0 0 10px blue; user-select: none; white-space: nowrap; filter: blur(0.007em); animation: shake 2.5s linear forwards; } h1 span { position: absolute; top: 0; left: 0; transform: translate(-50%, -50%); clip-path: polygon(10% 0%, 44% 0%, 70% 100%, 55% 100%); } h1::before, h1::after { content: attr(data-text); position: absolute; top: 0; left: 0; } h1::before { animation: crack1 2.5s linear forwards; clip-path: polygon(0% 0%, 10% 0%, 55% 100%, 0% 100%); } h1::after { animation: crack2 2.5s linear forwards; clip-path: polygon(44% 0%, 100% 0%, 100% 100%, 70% 100%); } @keyframes shake { 5%, 15%, 25%, 35%, 55%, 65%, 75%, 95% { filter: blur(0.018em); transform: translateY(0.018em) rotate(0deg); } 10%, 30%, 40%, 50%, 70%, 80%, 90% { filter: blur(0.01em); transform: translateY(-0.018em) rotate(0deg); } 20%, 60% { filter: blur(0.03em); transform: translate(-0.018em, 0.018em) rotate(0deg); } 45%, 85% { filter: blur(0.03em); transform: translate(0.018em, -0.018em) rotate(0deg); } 100% { filter: blur(0.007em); transform: translate(0) rotate(-0.5deg); } } @keyframes crack1 { 0%, 95% { transform: translate(-50%, -50%); } 100% { transform: translate(-51%, -48%); } } @keyframes crack2 { 0%, 95% { transform: translate(-50%, -50%); } 100% { transform: translate(-49%, -53%); } }
因为使用了 clip-path 裁剪后的元素,只有元素的剪切区域才能被显示,所以我们可以分别控制 3 个部分进行动画
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
HTML5中img标签图片有间隙怎么办?在网页开发中我们会经常使用img标签,当我们在添加多张图片的时候,有一些朋友有遇到图片存在间隙的问题,那么我们如何解决这个间隙,img标签的间距是如何调整的?
这篇文章主要介绍了css中overflow:hidden失效问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍了AmazeUI折叠式卡片布局,整合内容列表、表格组件实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要给大家分享关于CSS盒子模型的内容,CSS盒子模型的组成部分和使用本文都有介绍,对新手学习和了解CSS盒子模型有一定的帮助,感兴趣的朋友不妨了解看看,那么接下来就跟随小编一起学习一下吧。
最近做项目遇到这样的需求,页面加载数据比较慢,一直没有反应,下面小编给大家带来了基于CSS制作提示框 ‘正在加载请。。。。。’功能,需要的朋友参考下吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008