Tôi đang hiển thị cửa sổ bật lên phương thức bằng cách sử dụng chuyển tiếp CSS3 (phần lớn được vay từ Effeckt.css). Nó hoạt động tốt trong tất cả các trình duyệt hiện đại ngoại trừ Safari. Trong Safari, chuyển động là OK, nhưng màu nền lại không đều.Lỗi trong CSS3 xoay chuyển đổi trên Safari?
Đây là mã, vấn đề là có thể nhìn thấy trong Safari trên OSX: http://jsfiddle.net/eJsZx/4/
Một ảnh chụp màn hình của vấn đề trước khi nó giải quyết riêng của mình. Bạn có thể thấy rằng một nửa div được tô màu trắng một cách chính xác, một nửa vẫn trong suốt.
Đây là phần liên quan của CSS (.effeckt-show
và .md-effect-8
được áp dụng khi nút được nhấn vào, để hiển thị các phương thức):
.effeckt-modal {
visibility: hidden;
-webkit-backface-visibility: hidden;
-ms-backface-visibility: hidden;
-o-backface-visibility: hidden;
backface-visibility: hidden;
background: white;
}
.md-effect-8 {
-webkit-perspective: 1300px;
-ms-perspective: 1300px;
-o-perspective: 1300px;
perspective: 1300px;
-webkit-transform-style: preserve-3d;
-ms-transform-style: preserve-3d;
-o-transform-style: preserve-3d;
transform-style: preserve-3d;
}
.md-effect-8 .effeckt-modal {
-webkit-transform: rotateY(-70deg);
-ms-transform: rotateY(-70deg);
-o-transform: rotateY(-70deg);
transform: rotateY(-70deg);
-webkit-transition: all 500ms;
-o-transition: all 500ms;
transition: all 500ms;
opacity: 0;
}
.effeckt-show.md-effect-8 .effeckt-modal {
-webkit-transform: rotateY(0deg);
-ms-transform: rotateY(0deg);
-o-transform: rotateY(0deg);
transform: rotateY(0deg);
opacity: 1;
}
Đối http://jsfiddle.net/ardeezstyle/cdcnyfr6/ giải pháp của tôi, tôi đã thực hiện thay đổi nhỏ '-webkit-transform: translateZ (1000px); 'và nó làm việc như một say mê. +1 của tôi. Cảm ơn #ndm –
Lưu mông của tôi! Cảm ơn bạn :) FWIW, '-1000px' là không cần thiết nếu bạn không có bản dịch Z điên, bạn có thể thoát ra với' -1px'. – Jason