3
我有一個DOM元素,我translateX()到一些新的位置。firefox css3翻譯元素與溢出隱藏元素消失
在Firefox中,只要翻譯發生,該元素就會消失。經過大量的調試後,似乎只有當通過某個動作將元素動態應用到元素時,纔會發生這種情況,元素最初呈現後(如果css存在於頁面加載中,則不會發生),只有當translateX值爲大於元素寬度!此外,只有當dom元素具有「overflow:hidden」時纔會發生這種情況。
所以,如果我有一個200像素框:
#box { width: 200px; overflow: hidden; }
如果我翻譯爲199px,它完美的作品:
$('#box').css('transform', 'translateX(199px)')
但是,如果我翻譯成200像素,該框移動到新位置,然後一個第二後消失
$('#box').css('transform', 'translateX(200px)')
這裏是一個的jsfiddle:http://jsfiddle.net/vtkmZ/3/
- 僅Firefox
- 只有當DOM元素具有溢出:隱藏
- 只有在翻譯之後的動態應用第一渲染
- 只有當平移X()值是比元件寬度大
這種情況一致。任何想法爲什麼發生這種情況,以及任何解決方法?我無法在網上找到任何東西。這是一個已知的錯誤?
檢查此鏈接: http://stackoverflow.com/questions/15405054/firefox-mobile -element-animated-with-translate3d-flows-out-from-parent-containe – user1386213
我在Mac Chrome 36.0,Safari 7.0和Firefox 30.0之間的行爲沒有發現任何差異。 – jtheletter