Chrome bug border-radius+ переполнение с перспективой
У меня странная проблема с Chrome.
Если я создам div
с некоторой точки зрения, радиус границы, переполнение скрыто и преобразовано div
внутри элемента не будет уважать перспективу.
http://codepen.io/cavax/pen/MwPgxz
Если я уберу радиус границы, как вы можете видеть, элемент имеет перспективу.
Любая идея?
<div id="prova">
<div id="rotate"></div>
</div>
<div id="prova2">
<div id="rotate2"> </div>
</div>
#prova {
width: 400px;
height: 200px;
-webkit-perspective: 400px;
perspective: 400px;
margin: 40px;
border: 1px solid #000;
overflow: hidden;
border-radius: 30px;
}
#rotate {
width: 200px;
height: 200px;
background-color: red;
-webkit-transform: rotateX(40deg);
transform: rotateX(40deg);
position: absolute;
bottom: 0px;
left: 100px;
}
#prova2 {
width: 400px;
height: 200px;
-webkit-perspective: 400px;
perspective: 400px;
margin: 40px;
border: 1px solid #000;
overflow: hidden;
}
#rotate2 {
width: 200px;
height: 200px;
background-color: red;
-webkit-transform: rotateX(40deg);
transform: rotateX(40deg);
position: absolute;
bottom: 0px;
left: 100px;
}
2 ответа
Попробуйте установить перспективу прямо у ребенка:
-webkit-transform: perspective(400px) rotateX(40deg) rotateY(0) translateZ(0);
Итак, результат:
#prova2 {
position: relative;
width: 400px;
height: 200px;
margin: 40px;
border: 1px solid #000;
overflow: hidden;
border-radius: 30px;
}
#rotate2 {
width: 200px;
height: 200px;
background-color: red;
-webkit-transform: perspective(400px) rotateX(40deg) rotateY(0) translateZ(0);
position: absolute;
bottom: 0px;
left: 100px;
}
Фактически переполнение: скрыто, чтобы скрыть область перспективы. Так что это не дисплей.
Когда вы удалили переполнение: скрыто; это будет работать правильно
Спасибо