【发布时间】:2023-03-09 08:16:01
【问题描述】:
由于某种原因,我的垂直对齐代码模糊了 Chrome 和 Safari 中的一些子元素,但不是所有子元素。
造成它的原因是 translateY(-50%),如果我删除它,那么模糊就会消失,但垂直居中效果会丢失。
/* @group Center all the things */
.center-wrapper {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.center-wrapper .center {
position: relative;
overflow: hidden;
top: 50%;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
/* This fixes the blurred buttons but breaks centering
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);*/
}
/* @end */
经过尝试和测试的方法,例如以下工作,但它们破坏了垂直居中:
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
【问题讨论】:
-
您应该使用
transform: translateY(-50%) translateZ(0);组合您的转换或将此translateZ应用到您的容器。
标签: html css alignment css-transforms