CSS3 智能手机的转换不工作
CSS3 transform for smartphone don't work
我使用css3方法transform: rotateY(-180deg);
当光标悬停在块上时显示内容。
当我用智能手机点击区块时,没有任何附加内容,我该如何显示内容?
我的 class :
#effect-2 figure .img-hover {
top: 0;
left: 0;
width: 100%;
height: 100%;
padding: 0 10px;
text-align: center;
background-color: #e74c3c;
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
-ms-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-transform: rotateY(-180deg);
-moz-transform: rotateY(-180deg);
-ms-transform: rotateY(-180deg);
-o-transform: rotateY(-180deg);
transform: rotateY(-180deg);
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
-ms-transition: all 0.5s;
-o-transition: all 0.5s;
transition: all 0.5s;
}
HTML块:
<li>
<figure>
<img src="img/cocacola.png" class="front">
<div class="img-hover">
<h4>Cocacola</h4>
</div>
</figure>
</li>
试试这个代码:
-ms-transform: rotateY(-180deg); /* IE 9 */
-webkit-transform: rotateY(-180deg); /* Chrome, Safari, Opera */
transform:rotateY(-180deg);
侦听给定元素的点击事件并在其上切换 css-class。然后你可以在 class.
中指定你的转换
一个示例是像这样在元素上内联编写事件侦听器:
<div onclick="this.classList.toggle('transform-class')"></div>
然后,如果您想重构代码并在单独的 javascript 文件中绑定事件侦听器,您可以稍后进行。
您可以使用javascript为触摸设备添加触摸事件来添加您class(并触发动画),即:
var myElement = //get your element
myElement.addEventListener('touchstart', function(e){
this.className = "hover";
setTimeout(function(){
myElement.className = "";
}, [animation duration]);
});
您可以将上面的 animation duration
设置为与您的 css 效果(假设它们不循环)的时间相匹配,以便可以重复使用。如果它确实循环那么你不需要担心它。
如果您希望某些东西在触摸处于活动状态时起作用,您可以在 touchend
上触发删除 class
我使用css3方法transform: rotateY(-180deg);
当光标悬停在块上时显示内容。
当我用智能手机点击区块时,没有任何附加内容,我该如何显示内容?
我的 class :
#effect-2 figure .img-hover {
top: 0;
left: 0;
width: 100%;
height: 100%;
padding: 0 10px;
text-align: center;
background-color: #e74c3c;
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
-ms-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-transform: rotateY(-180deg);
-moz-transform: rotateY(-180deg);
-ms-transform: rotateY(-180deg);
-o-transform: rotateY(-180deg);
transform: rotateY(-180deg);
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
-ms-transition: all 0.5s;
-o-transition: all 0.5s;
transition: all 0.5s;
}
HTML块:
<li>
<figure>
<img src="img/cocacola.png" class="front">
<div class="img-hover">
<h4>Cocacola</h4>
</div>
</figure>
</li>
试试这个代码:
-ms-transform: rotateY(-180deg); /* IE 9 */
-webkit-transform: rotateY(-180deg); /* Chrome, Safari, Opera */
transform:rotateY(-180deg);
侦听给定元素的点击事件并在其上切换 css-class。然后你可以在 class.
中指定你的转换一个示例是像这样在元素上内联编写事件侦听器:
<div onclick="this.classList.toggle('transform-class')"></div>
然后,如果您想重构代码并在单独的 javascript 文件中绑定事件侦听器,您可以稍后进行。
您可以使用javascript为触摸设备添加触摸事件来添加您class(并触发动画),即:
var myElement = //get your element
myElement.addEventListener('touchstart', function(e){
this.className = "hover";
setTimeout(function(){
myElement.className = "";
}, [animation duration]);
});
您可以将上面的 animation duration
设置为与您的 css 效果(假设它们不循环)的时间相匹配,以便可以重复使用。如果它确实循环那么你不需要担心它。
如果您希望某些东西在触摸处于活动状态时起作用,您可以在 touchend