我正在尝试制作一张翻转卡片并显示其背面。它在其他所有浏览器中都可以工作,但在Internet Explorer 11中不行。
我尝试添加了-ms-前缀,但没有帮助。问题似乎是IE不支持css属性 transform-style: preserve-3d
。
这里有一个jsfiddle示例:https://jsfiddle.net/gbkq94hr/
HTML
<body>
<article>
<div id="card0" class="card">
<figure class="front">
</figure>
<figure class="back">
</figure>
</div>
</article>
</body>
JavaScript
$(document).ready(function () {
var flipped = false;
var card = $("#card0");
card.click(function() { flipFunction();});
function flipFunction() {
if (flipped) {
flipped = false;
card.removeClass('flip');
} else {
card.addClass('flip');
flipped = true;
}
};
});
CSShtml {
height: 100%;
}
.flip {
transform: rotateY(180deg);
}
.card {
float:left;
width: 110px;
height: 139px;
cursor: pointer;
transform-style: preserve-3d;
transition: transform 1s;
position: relative;
}
figure {
margin: 0;
display: block;
position: absolute;
width: 100%;
height: 100%;
backface-visibility: hidden;
-ms-backface-visibility:hidden;
}
.back {
background-color: blue;
transform: rotateY(-180deg);
}
.front {
z-index: 2;
background-color: red;
transform:rotateY(0deg);
}
article {
height: 114px;
width: 114px;
perspective: 1000;
}
编辑:
如评论中所建议的那样,我尝试按照David Walsh的说明操作,但仍然无法使其正常工作。 https://jsfiddle.net/w9o2chmn/2/