使用box-shadow设置阴影实现立体感,2. 通过@keyframes定义上下位移与阴影变化的动画,3. 将动画绑定元素并设为无限循环,利用ease-in-out使漂浮更自然。

想让网页元素看起来像是“漂浮”在页面上,可以通过结合CSS的 box-shadow 和 animation 实现自然的浮动效果。这种设计常用于卡片、按钮或悬浮模块,增强视觉层次和交互感。
使用 box-shadow 制造立体感
box-shadow 能为元素添加阴影,模拟光源下的投影,是实现“悬浮”视觉的关键。通过设置模糊半径和偏移值,可以让元素看起来脱离背景。
.floating-box {
width: 200px;
height: 150px;
background-color: #4a90e2;
border-radius: 12px;
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
margin: 50px auto;
}
这里的 0 8px 20px 表示:无水平偏移,向下偏移8px,模糊半径20px,配合透明黑色产生柔和阴影。
用 keyframes 定义浮动动画
通过 @keyframes 创建一个上下移动并轻微改变阴影的动画,模拟轻盈漂浮感。
立即学习“前端免费学习笔记(深入)”;
Qoder
阿里巴巴推出的AI编程工具
270 查看详情
@keyframes float {
0% {
transform: translateY(0);
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}
50% {
transform: translateY(-10px);
box-shadow: 0 12px 25px rgba(0, 0, 0, 0.2);
}
100% {
transform: translateY(0);
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}
}
在最高点时,元素上移10px,同时阴影更大更暗,表示“离背景更远”,增强立体错觉。
将动画应用到元素
把定义好的动画绑定到目标元素,并设置循环播放和缓动函数,使运动更自然。
.floating-box {
animation: float 3s ease-in-out infinite;
}
ease-in-out 让动画起止慢、中间快,模仿物理惯性。infinite 实现持续漂浮。
基本上就这些。只要合理搭配阴影变化与位移动画,就能轻松做出逼真的浮动效果,提升界面活力。
以上就是CSS动画与盒子阴影box-shadow结合应用_实现浮动效果的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/949295.html
微信扫一扫
支付宝扫一扫