当前位置:首页 > CSS

css3制作立体效果

2026-01-08 20:24:17CSS

使用 transform 属性实现立体旋转

通过 transform-style: preserve-3drotateX/Y/Z 实现 3D 空间变换:

.container {
  transform-style: preserve-3d;
  perspective: 1000px; /* 视距增强立体感 */
}
.box {
  transform: rotateX(45deg) rotateY(30deg);
}

添加阴影增强立体感

结合 box-shadow 模拟光源效果:

css3制作立体效果

.box {
  box-shadow: 
    5px 5px 15px rgba(0, 0, 0, 0.3), /* 底部阴影 */
    -5px -5px 10px rgba(255, 255, 255, 0.1); /* 顶部高光 */
}

使用渐变模拟光照效果

通过 linear-gradient 创建明暗面:

css3制作立体效果

.box {
  background: linear-gradient(
    135deg, 
    #ccc 0%, /* 亮部 */
    #999 50%, /* 过渡 */
    #666 100% /* 暗部 */
  );
}

边框模拟厚度

利用 border 或伪元素制作边缘厚度:

.box {
  position: relative;
}
.box::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 100%;
  height: 10px;
  background: #555;
  transform: rotateX(-45deg);
}

动画强化 3D 动态效果

通过关键帧动画展示立体旋转:

@keyframes spin {
  0% { transform: rotateY(0); }
  100% { transform: rotateY(360deg); }
}
.box {
  animation: spin 5s infinite linear;
}

注意事项

  • perspective 需设置在父容器上,数值越小透视感越强。
  • 多个变换属性需合并到单个 transform 声明中,避免覆盖。
  • 兼容性:部分旧浏览器需前缀(如 -webkit-transform)。

标签: 效果
分享给朋友:

相关文章

vue实现效果

vue实现效果

Vue 实现常见效果的方法 数据绑定与响应式更新 Vue 的核心特性是数据绑定,通过 v-model 实现表单元素与数据的双向绑定。例如输入框与数据的实时同步: <input v-model=…

vue实现滚动效果

vue实现滚动效果

Vue 实现滚动效果的方法 使用原生滚动方法 通过 Vue 的 ref 获取 DOM 元素,调用原生 scrollTo 或 scrollIntoView 方法实现滚动。 <template&g…

vue实现折叠效果

vue实现折叠效果

使用 v-show 或 v-if 实现基础折叠 通过 Vue 的指令 v-show 或 v-if 控制元素的显示与隐藏。v-show 通过 CSS 的 display 属性切换,v-if 直接操作 D…

vue实现烟花效果

vue实现烟花效果

Vue 实现烟花效果的方法 在Vue中实现烟花效果可以通过结合Canvas绘图和动画技术来完成。以下是一种常见的实现方式: 创建Vue组件 新建一个名为Fireworks.vue的组件,核心逻辑如下…

vue实现菜单效果

vue实现菜单效果

Vue实现菜单效果的方法 基础菜单实现 使用Vue的v-for指令和v-show/v-if可以快速实现基础菜单。通过数据驱动的方式渲染菜单项,结合事件处理实现交互。 <template>…

vue实现回弹效果

vue实现回弹效果

Vue 实现回弹效果的方法 回弹效果(Bounce Effect)常见于移动端交互,可以通过 CSS 动画或 JavaScript 实现。以下是几种在 Vue 中实现回弹效果的方案: 使用 CSS…