背面可见性属性

最后更新:2026-09-13

backface-visibility 背面可见性属性

backface-visibility 用于控制元素在 3D 旋转后,其背面朝向观察者时是否可见。默认值为 visible,背面会镜像显示正面内容;设为 hidden 后,背面朝向观察者时元素不可见,常用于实现卡片翻转、立方体等需要区分正反面的 3D 效果。

分类
初始值visible
继承
适用于
可动画
CSS 版本CSS3
状态标准

📝 语法

backface-visibility: visible | hidden;

⚙️ 取值

类型描述
visible | hidden关键字背面是否可见

▶ 示例

编辑下方代码,在 playground 中查看实时效果:

🌐 浏览器支持

浏览器 ChromeChrome EdgeEdge FirefoxFirefox SafariSafari OperaOpera
backface-visibility v36 v12 v16 v9 v23
所有主流浏览器均支持
重要: backface-visibility 只在 3D 变换(transform-style: preserve-3d)下生效;2D 旋转不会显示背面。
提示: 卡片翻转效果中,正反面都需要设置 backface-visibility: hidden,且背面预先 rotateY(180deg) 翻到后面。

❓ 常见问题

Q为什么翻转后看到的是镜像文字?
A默认 backface-visibility: visible,元素背面朝向观察者时会把正面内容镜像显示出来,看起来像「透明的倒影文字」。要实现正常的卡片翻转,需要给正反面都设置 backface-visibility: hidden,并把背面元素预先 rotateY(180deg),翻转时两面交替可见。
Qbackface-visibility 会影响性能吗?
A设为 hidden 时,浏览器可以跳过背面不可见时的绘制工作,在 3D 场景中反而能提升渲染性能,属于推荐做法。相比之下 visible 需要始终渲染正反两面。性能敏感的场景(如大量 3D 卡片)建议统一设置 hidden 并按需控制可见性。
Qbackface-visibility 在 2D 旋转时有效吗?
A没有意义。2D 旋转(如 rotate 45deg)不会把元素翻转过来,背面永远不会朝向观察者,backface-visibility 不生效。它只在 3D 变换下起作用,例如 rotateY(180deg)、rotateX(180deg) 让元素背对观察者时,hidden 才会隐藏背面。
Q如何用 backface-visibility 实现 3D 卡片翻转?
A四步:父容器设 transform-style: preserve-3d;正反两个子元素绝对定位重叠,都设 backface-visibility: hidden;背面元素预先 rotateY(180deg);交互时给父容器 rotateY(180deg)。配合 transition 过渡,即可得到平滑翻面效果。

📚 相关教程

Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏