简介
在本实验中,我们将学习如何使用 CSS 创建一个波形链接悬停效果。当鼠标悬停在链接上时,此效果会创建一个波形动画,为你的网站增添有趣且动态的元素。通过使用线性渐变背景和带有波形路径的 SVG,我们只需几行代码就能实现此效果。
This tutorial is from open-source community. Access the source code
💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版
在本实验中,我们将学习如何使用 CSS 创建一个波形链接悬停效果。当鼠标悬停在链接上时,此效果会创建一个波形动画,为你的网站增添有趣且动态的元素。通过使用线性渐变背景和带有波形路径的 SVG,我们只需几行代码就能实现此效果。
虚拟机中已经提供了 index.html
和 style.css
。
要在悬停链接时创建波形效果,你可以按照以下步骤操作:
linear-gradient
为链接创建重复背景。a.squiggle {
background: linear-gradient(to bottom, #0087ca 0%, #0087ca 100%);
background-position: 0 100%;
background-repeat: repeat-x;
background-size: 2px 2px;
color: inherit;
text-decoration: none;
}
:hover
状态,其 background-image
为一个数据 URL,包含一个带有波形路径的 SVG 和一个动画。a.squiggle:hover {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 4'%3E%3Cstyle type='text/css'%3E.squiggle{animation:shift.3s linear infinite;}@keyframes shift {from {transform:translateX(0);}to {transform:translateX(-15px);}}%3C/style%3E%3Cpath fill='none' stroke='%230087ca' stroke-width='2' class='squiggle' d='M0,3.5 c 5,0,5,-3,10,-3 s 5,3,10,3 c 5,0,5,-3,10,-3 s 5,3,10,3'/%3E%3C/svg%3E");
background-size: auto 4px;
}
<p>
The <a class="squiggle" href="#">magnificent octopus</a> swam along
gracefully.
</p>
请点击右下角的“Go Live”以在端口 8080 上运行 Web 服务。然后,你可以刷新“Web 8080”标签页来预览网页。
恭喜你!你已经完成了波形链接悬停效果实验。你可以在 LabEx 中练习更多实验来提升你的技能。