0
以下のコードには、内容をラップするための幅:1pxのセル内のトランジションが含まれています。しかし、テーブルレイアウトの変更は、最後に発生した(または開始)の遷移:幅1pxのテーブルセル内での遷移
var animator = document.getElementById("animator");
function Animate(){
if(animator.style.width === "100%"){
animator.style.width = "0";
}else{
animator.style.width = "100%";
}
}
document.getElementById("btn").addEventListener("click", Animate);
<table style="width:100%;">
<tr>
<td style="width:1px;">
<div id="animator" style="width:100%; overflow:hidden; transition:2s linear width;">
<div style="background-color:red;">
111
</div>
</div>
</td>
<td>1111111111111111</td>
<td>11111111</td>
<td style="width:1px;">11111111</td>
</tr>
</table>
<button id="btn">Animate
</button>
遷移が行われているとしてどのようにレイアウトするテーブルを強制することができますか?
まず物事:A) 'td'の実際の幅を把握し、それを設定するJSを使用しています。この方法では、オプションで '111'と赤の' div'を入れ子にすることができます。 b)代わりに 'background-image'(あるいは' background-color'、確かに?)を使用して、その位置/サイズをアニメーション化します。 – domsson