当前位置:首页 > CSS

css网页制作漂浮图片

2026-01-08 20:25:12CSS

使用CSS实现漂浮图片效果

通过CSS的animation属性和@keyframes规则可以轻松实现图片漂浮效果。以下是几种常见实现方式:

基础漂浮动画

通过关键帧定义图片的垂直移动,模拟漂浮感:

.floating-img {
    animation: float 3s ease-in-out infinite;
}

@keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-20px); }
    100% { transform: translateY(0px); }
}

3D漂浮效果

增加X轴移动和旋转,营造更立体的漂浮感:

.floating-3d {
    animation: float3d 4s ease-in-out infinite;
}

@keyframes float3d {
    0% { transform: translateY(0) rotateX(0deg); }
    50% { transform: translateY(-15px) rotateX(5deg); }
    100% { transform: translateY(0) rotateX(0deg); }
}

缓动漂浮效果

使用cubic-bezier实现更自然的运动曲线:

.floating-bounce {
    animation: bounce 2.5s cubic-bezier(0.3, 0.5, 0.4, 0.5) infinite;
}

@keyframes bounce {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-30px); }
}

结合阴影增强立体感

为漂浮元素添加动态阴影效果:

.floating-with-shadow {
    animation: float-shadow 3s infinite;
    filter: drop-shadow(0 5px 5px rgba(0,0,0,0.3));
}

@keyframes float-shadow {
    0% { transform: translateY(0); filter: drop-shadow(0 5px 5px rgba(0,0,0,0.3)); }
    50% { transform: translateY(-20px); filter: drop-shadow(0 15px 8px rgba(0,0,0,0.2)); }
    100% { transform: translateY(0); filter: drop-shadow(0 5px 5px rgba(0,0,0,0.3)); }
}

随机漂浮效果

通过多个动画组合实现更自然的随机运动:

.random-float {
    animation: 
        float-x 7s ease-in-out infinite,
        float-y 4s ease-in-out infinite;
}

@keyframes float-x {
    0% { transform: translateX(0); }
    50% { transform: translateX(15px); }
    100% { transform: translateX(0); }
}

@keyframes float-y {
    0% { transform: translateY(0); }
    50% { transform: translateY(-25px); }
    100% { transform: translateY(0); }
}

实际应用示例

HTML结构:

<img src="image.png" class="floating-img" alt="漂浮图片">

注意事项:

css网页制作漂浮图片

  • 调整animation-duration可改变漂浮速度
  • 修改translateY值可调整漂浮幅度
  • 使用infinite让动画循环播放
  • 考虑添加will-change: transform优化性能

分享给朋友:

相关文章

css3手工制作图片

css3手工制作图片

使用CSS3手工制作图片 CSS3可以通过各种属性如box-shadow、border-radius、gradient等来手工绘制简单的图形或图片效果。以下是几种常见的方法: 绘制圆形 通过bord…

vue实现展示图片

vue实现展示图片

在 Vue 中展示图片的方法 静态图片展示 静态图片通常存放在项目的 public 或 assets 目录下。使用 img 标签直接引用。 <template> <img sr…

js实现图片加载

js实现图片加载

使用Image对象加载图片 通过JavaScript的Image对象可以动态加载图片,适用于需要预加载或动态插入图片的场景。 const img = new Image(); img.src =…

js实现图片放大

js实现图片放大

使用 CSS transform 实现图片放大 通过 CSS 的 transform: scale() 属性实现图片放大效果。当鼠标悬停时,图片会平滑放大。 const img = document…

vue实现图片识别

vue实现图片识别

Vue 实现图片识别的方法 使用 Tesseract.js 进行 OCR 识别 Tesseract.js 是一个基于 JavaScript 的 OCR 库,可以在浏览器中直接识别图片中的文字。在 Vu…

vue实现图片缩放

vue实现图片缩放

实现图片缩放的基本方法 在Vue中实现图片缩放可以通过CSS的transform: scale()属性或动态调整图片的width和height属性。以下是一个基础的实现示例: <templat…