当前位置:首页 > 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 模拟光源效果:

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

使用渐变模拟光照效果

通过 linear-gradient 创建明暗面:

.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)。

css3制作立体效果

标签: 效果
分享给朋友:

相关文章

vue实现框架效果

vue实现框架效果

Vue 实现框架效果的方法 Vue.js 可以通过多种方式实现框架效果,包括使用内置指令、组件封装或第三方库。以下是几种常见的方法: 使用 Vue 指令实现基础框架效果 通过 Vue 的 v-if…

vue实现拖拉效果

vue实现拖拉效果

实现拖拽效果的基本方法 在Vue中实现拖拽效果可以通过原生HTML5的拖拽API或第三方库如vuedraggable来完成。以下是两种常见方法的详细说明。 使用HTML5拖拽API HTML5提供…

vue实现效果展示

vue实现效果展示

Vue 实现效果展示的方法 动态数据绑定展示 通过 Vue 的响应式特性,实时展示数据变化。例如,表单输入与预览同步: <template> <div> <…

vue实现定位效果

vue实现定位效果

使用Geolocation API实现定位 在Vue中可以通过浏览器内置的Geolocation API获取用户位置信息。需要在组件的mounted钩子中调用相关方法: mounted() {…

vue实现预览效果

vue实现预览效果

Vue 实现预览效果的方法 使用 v-html 指令实现简单预览 在 Vue 中可以通过 v-html 指令直接将 HTML 字符串渲染到页面上,适用于简单的富文本预览场景。 <templat…

vue实现突出效果

vue实现突出效果

Vue 实现突出效果的方法 在 Vue 中实现突出效果可以通过多种方式,包括动态样式绑定、过渡动画、第三方库等。以下是几种常见的方法: 动态样式绑定 通过 v-bind:class 或 v-bind…