我一直在玩CSS3轉換以淡入覆蓋div,當我遇到了一個奇怪的問題時。CSS 3與不透明度的轉換 - Chrome和Firefox
基本上我有一個div元素,它的樣式設置爲id - 即background-color:#000,opacity:0等。以及瀏覽器特定的轉換樣式。默認情況下,overlay元素上有一個「hiddenElement」類,將其設置爲none。
當要顯示疊加層時,hiddenElement類將被刪除,而另一個類將添加「初始化」類,此類將元素不透明度設置爲0.6。
我期望發生的事情是元素能夠流暢地動畫,這在Opera中發生,但是在firefox和chrome中它並不像那樣工作。
我在這裏構建了一個獨立的案例:http://jsbin.com/obojet/27/。你可以看到,當「addClass('Initialised')」包含在setTimeout()中時,即使在chrome中超時時間爲0ms,它也可以正確地進行動畫處理。只是在超時之外做addClass,不會做動畫。在Firefox中,超時時間必須更長 - 50ms。在歌劇中它只是起作用。
這可能是UI/Javascript競爭單線程,但我只是好奇是否有其他人遇到類似的問題。
我不能將它標記爲opacity:0,因爲覆蓋圖覆蓋了整個屏幕,並且我希望在顯示之間將它留在DOM中。你說得對,顯示:沒有問題。向左移動可糾正問題。顯示器令人討厭:在這種情況下,沒有任何東西看起來更像是正確的事情。 –