Firefox Mobile:使用translate3d设置动画的元素从父容器流出

ist*_*men 3 firefox mobile android css3 translate3d

我有一个元素,我使用translate3d转换.父元素有overflow: hidden,但在动画期间在Firefox Mobile 19.0.2上,动画元素在父元素之外是可见的.

动画top属性而不是translate3d工作,但它不是硬件加速,它不够平滑.

它适用于我测试的所有其他移动和桌面浏览器.

我想这是一个Firefox Mobile漏洞,但有没有人有解决方法呢?

以下是用于测试的jsfiddle链接:http://jsfiddle.net/dioslaska/6h8qe/

最小的测试用例:

HTML:

<div id="cont">
    <div id="translate">
        <div>1</div>
        <div>2</div>
        <div>3</div>
        <div>4</div>
        <div>5</div>
        <div>6</div>
        <div>7</div>
        <div>8</div>
        <div>9</div>
        <div>10</div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS:

#cont {
    width: 50px;
    height: 90px;
    border: 1px solid black;
    margin: 20px;
    overflow: hidden;
}

#translate {
    -webkit-transition: all 1s ease-out;
    -moz-transition: all 1s ease-out;
}

#translate.a {
    -webkit-transform: translate3d(0, -60px,0);
    -moz-transform: translate3d(0, -60px,0);
}

#translate div {
    height: 30px;
    line-height: 30px;
    text-align: center;
}
Run Code Online (Sandbox Code Playgroud)

更新:看起来问题在Firefox 27中得到了解决.

ist*_*men 5

经过大量的搜索,我找到了一个解决方法:http: //jbkflex.wordpress.com/2013/04/04/css3-transformations-showing-content-outside-overflowhidden-region-in-firefoxandroid/

添加一个backgroundopacity: .99容器元素似乎解决了这个问题.

但仍然没有关于导致问题的原因的信息