当前位置:首页 > CSS

css制作书翻页

2026-04-02 15:48:52CSS

使用CSS制作书翻页效果

要实现书翻页效果,可以利用CSS的transformtransition属性,结合HTML结构创建逼真的翻页动画。以下是两种常见方法:

3D翻页效果

通过CSS 3D变换模拟书本翻页的立体感:

css制作书翻页

<div class="book">
  <div class="page"></div>
  <div class="page"></div>
</div>
.book {
  perspective: 1000px;
  width: 200px;
  height: 300px;
  position: relative;
}

.page {
  position: absolute;
  width: 100%;
  height: 100%;
  background: white;
  border: 1px solid #ddd;
  transform-origin: left center;
  transition: transform 1s ease;
}

.page:hover {
  transform: rotateY(-160deg);
}

关键点:

  • perspective属性定义3D空间的深度
  • transform-origin设置旋转轴心点为左侧边缘
  • rotateY实现横向翻页效果

折角翻页效果

创建类似纸张被折起的扁平化效果:

css制作书翻页

.page {
  background: linear-gradient(to bottom right, #fff 90%, #eee 100%);
  box-shadow: -5px 5px 10px rgba(0,0,0,0.1);
}

.page:hover {
  transform: 
    rotate(-15deg)
    skewY(-5deg)
    translateX(-10px);
}

进阶技巧

添加阴影增强真实感:

.page::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 60%;
  height: 100%;
  background: linear-gradient(to left, rgba(0,0,0,0.2), transparent);
  transform: skewY(5deg);
}

多页联动控制:

document.querySelectorAll('.page').forEach((page, index) => {
  page.style.transitionDelay = `${index * 0.1}s`;
});

注意事项

  • 在移动端需添加touch事件支持
  • 考虑使用will-change: transform优化性能
  • 复杂场景可结合CSS变量动态控制旋转角度

以上方法可根据实际需求调整尺寸、过渡时间和视觉效果参数。

标签: 翻页css
分享给朋友:

相关文章

react 如何引入css

react 如何引入css

在 React 中引入 CSS 的方法 React 提供了多种引入 CSS 的方式,可以根据项目需求选择合适的方法。以下是常见的几种方式: 内联样式 内联样式直接在组件中通过 style 属性定义,…

css制作圆形

css制作圆形

使用 border-radius 属性 通过设置 border-radius 为 50%,可以将元素变为圆形。元素的宽度和高度需相同,否则会呈现椭圆形。 .circle { width: 1…

css 制作石头

css 制作石头

使用CSS制作石头效果 通过CSS的border-radius、box-shadow和background属性可以模拟石头的自然外观。以下是一个简单实现: <div class="stone"…

css制作半圆

css制作半圆

使用 border-radius 制作半圆 通过设置 border-radius 属性,可以将矩形的边角弯曲成圆弧形状。制作半圆的关键是将宽度和高度设置为 2:1 的比例,并只对两个角应用圆角。 .…

css文件怎么制作

css文件怎么制作

创建CSS文件的基本步骤 CSS文件用于定义网页的样式,可以与HTML文件分离,便于管理和维护。以下是创建CSS文件的方法: 新建文本文件 使用任意文本编辑器(如Notepad++、VS Code、…

css怎么制作首字下沉

css怎么制作首字下沉

首字下沉的实现方法 首字下沉是一种常见的排版效果,通过放大段落的首字母并使其下沉,可以增强文本的视觉吸引力。以下是几种实现方法: 使用::first-letter伪元素 通过CSS的::first-…