当前位置:首页 > CSS

css制作奔跑白熊

2026-03-12 08:33:49CSS

CSS奔跑白熊动画实现

通过CSS动画和关键帧技术可以创建一个奔跑的白熊效果,以下是具体实现方法:

HTML结构

创建一个包含熊身体各部分的HTML结构:

<div class="bear">
  <div class="head"></div>
  <div class="ear left"></div>
  <div class="ear right"></div>
  <div class="eye left"></div>
  <div class="eye right"></div>
  <div class="body"></div>
  <div class="arm left"></div>
  <div class="arm right"></div>
  <div class="leg left"></div>
  <div class="leg right"></div>
</div>

CSS样式与动画

通过关键帧动画实现奔跑效果:

.bear {
  position: relative;
  width: 200px;
  height: 150px;
  margin: 100px auto;
}

.head {
  position: absolute;
  width: 80px;
  height: 70px;
  background: white;
  border-radius: 50%;
  top: 0;
  left: 60px;
}

.ear {
  position: absolute;
  width: 25px;
  height: 25px;
  background: white;
  border-radius: 50%;
  top: -10px;
}

.ear.left { left: 55px; }
.ear.right { left: 100px; }

.eye {
  position: absolute;
  width: 10px;
  height: 10px;
  background: black;
  border-radius: 50%;
  top: 30px;
}

.eye.left { left: 75px; }
.eye.right { left: 95px; }

.body {
  position: absolute;
  width: 100px;
  height: 80px;
  background: white;
  border-radius: 40px;
  top: 60px;
  left: 50px;
}

.arm, .leg {
  position: absolute;
  width: 20px;
  height: 40px;
  background: white;
  border-radius: 10px;
}

.arm.left {
  top: 70px;
  left: 40px;
  transform-origin: top center;
  animation: armSwing 0.5s infinite alternate;
}

.arm.right {
  top: 70px;
  left: 140px;
  transform-origin: top center;
  animation: armSwing 0.5s infinite alternate-reverse;
}

.leg.left {
  top: 130px;
  left: 60px;
  transform-origin: top center;
  animation: legSwing 0.5s infinite alternate;
}

.leg.right {
  top: 130px;
  left: 120px;
  transform-origin: top center;
  animation: legSwing 0.5s infinite alternate-reverse;
}

@keyframes armSwing {
  0% { transform: rotate(-20deg); }
  100% { transform: rotate(20deg); }
}

@keyframes legSwing {
  0% { transform: rotate(-15deg); }
  100% { transform: rotate(15deg); }
}

.bear {
  animation: run 1s infinite linear;
}

@keyframes run {
  0% { transform: translateX(0); }
  100% { transform: translateX(50px); }
}

效果增强技巧

为让奔跑效果更真实,可以添加以下改进:

.body {
  animation: bodyBounce 0.5s infinite alternate;
}

@keyframes bodyBounce {
  0% { transform: translateY(0); }
  100% { transform: translateY(5px); }
}

.head {
  animation: headBob 0.5s infinite alternate;
}

@keyframes headBob {
  0% { transform: rotate(-5deg); }
  100% { transform: rotate(5deg); }
}

移动控制

添加JavaScript使熊能跟随鼠标移动:

css制作奔跑白熊

document.addEventListener('mousemove', (e) => {
  const bear = document.querySelector('.bear');
  const mouseX = e.clientX;
  const direction = mouseX > window.innerWidth/2 ? 1 : -1;
  bear.style.transform = `scaleX(${direction}) translateX(${mouseX/10}px)`;
});

注意事项

  • 调整动画时间和幅度可获得不同速度的奔跑效果
  • 添加阴影和渐变可增强立体感
  • 响应式设计需考虑不同屏幕尺寸的适配
  • 兼容性处理需添加浏览器前缀如-webkit-

标签: 白熊css
分享给朋友:

相关文章

css如何制作圆

css如何制作圆

使用 border-radius 属性制作圆 通过设置 border-radius 属性为元素添加圆角效果。当 border-radius 的值等于元素宽度和高度的一半时,元素会呈现圆形。 .cir…

css制作导航栏

css制作导航栏

水平导航栏 使用 display: inline-block 或 flexbox 创建水平导航栏。设置背景色、内边距和悬停效果增强交互性。 <nav class="horizontal-nav…

css二级菜单制作

css二级菜单制作

使用纯CSS实现二级菜单 通过嵌套HTML结构和CSS选择器实现二级菜单的显示与隐藏效果。以下是一个基础实现方案: HTML结构: <ul class="menu"> <li…

css网页制作教程下载

css网页制作教程下载

CSS网页制作教程下载资源推荐 免费在线教程平台 W3Schools(www.w3schools.com/css/)提供交互式CSS教程,涵盖基础到高级内容,支持在线练习。 MDN Web Docs(…

css制作春季踏青

css制作春季踏青

使用CSS制作春季踏青主题效果 背景设计 通过渐变背景模拟春日天空,使用柔和的色调如浅蓝、淡绿和粉色。可以添加云朵或小鸟的剪影作为装饰元素。 body { background: linear-…

css制作网页

css制作网页

CSS 网页设计基础 CSS(层叠样式表)用于控制网页的视觉呈现,包括布局、颜色、字体等。以下为关键方法和示例: 基础结构 HTML 文件需链接 CSS: <link rel="styles…