2013-07-14 134 views
1

我试图弄清楚如何“动画”悬停元素的子项。如何让它跨越多个浏览器工作如此复杂?
最佳做法是什么?悬停父项时子元素上的CSS转换

.parent { 
    -moz-transition:-moz-transform 180ms; 
    -webkit-transition:-webkit-transform 180ms; 
    -o-transition:-o-transform 180ms; 
    transition:transform 180ms; 
} 
.parent:hover > .child { 
    transform: translate(0,-42px); 
} 

http://jsfiddle.net/KKrdA/2/在Firefox

.parent { 
    -moz-transition:top 180ms; 
    -webkit-transition:top 180ms; 
    -o-transition:top 180ms; 
    transition:top 180ms; 
} 
.parent:hover > .child { 
    top:-42px; 
} 

http://jsfiddle.net/KKrdA/1/作品与WebKit浏览器

+0

为什么你不能将二者结合起来:这意味着你为什么不能兼得'变换:翻译(0 -42px);'和'顶:-42px;'相同的规则之内即'。父级:悬停> .child。或者我没有正确理解你的问题? – vee

回答

4

变换是不是跨浏览器兼容,你还是要针对特定​​的浏览器。

.parent:hover > .child { 
    transform: translate(0,-42px); 
    -webkit-transform: translate(0,-42px); 
    -moz-transform: translate(0,-42px); 
    -o-transform: translate(0,-42px); 
    -ms-transform: translate(0,-42px); 
} 
+0

本应该看到它。谢谢!为什么动画的顶级属性如此痛苦呢? – yardarrat

+0

@yardarrat CSS职位本身就是一种痛苦。注意tranfoerm!= top – raam86

相关问题