Подскажите, пожалуйста, почему используя transform-style: preserve-3d; в примере есть мигание и как от него избавиться? <https://codepen.io/html5book/pen/bOLzVq >
1 Answers
Не могу сказать с уверенностью в 100%, но возможно это дефект перспективы. Что бы решить, достаточно указать браузеру что бы не дотягивал до конца.
* {
margin: 0;
box-sizing: border-box;
}
section {
max-width: 600px;
margin: 0 auto;
text-align: center;
}
p {
padding: 20px 0;
}
.container {
perspective: 500px;
margin: 0 40px;
background: rgba(195, 209, 212, .7);
border-radius: 5px;
}
.style-flat {
transform-style: flat;
}
.style-3d {
transform-style: preserve-3d;
}
.flip {
height: 160px;
transform: rotateX(45deg);
border-radius: 5px;
background: rgba(169, 90, 145, .8);
-webkit-animation: rotate 5s infinite;
animation: rotate 5s infinite;
}
@keyframes rotate {
0%,
100% {
transform: rotateX(45deg);
}
50% {
transform: rotateX(0.1deg);
}
}
<section>
<p><kbd>transform-style: flat;</kbd></p>
<div class="container style-flat">
<div class="flip"></div>
</div>
<p><kbd>transform-style: preserve-3d;</kbd></p>
<div class="container style-3d">
<div class="flip"></div>
</div>
</section>
И да такие штуки лучше тестировать в других браузерах... с анимацией бывают проблемы
- 6,168
-
Благодарю, очень помогли – Lia Jan 21 '22 at 20:08