2016-03-29 5 views
1

アイテムがテーブルに表示されているときにハイライトしようとしています。同時に2つ、3つ、またはそれ以上のアイテムが表示される場合があります。ただし、ng-animateではありません。はこれを正しく処理しているようです。ng-animate複数の表の行がアニメートされない

次のようなフィドルでは、テーブル行の実際の使用例を見ることができます(div要素の例に沿って)。 div要素は適切にアニメーション化されます。テーブルの行要素はそうではありません。 (簡体字)

Demo Fiddle

HTML

<table class="animate-appear"> 
    <tr ng-repeat="item in repeatingItems"> 
    <td>{{item}}</td> 
    <td>{{item}}</td> 
    </tr> 
</table> 

CSS

table.animate-appear tr td { 
    padding: 5px 10px; 
    transition: all 1s ease; 
    opacity: 1; 
} 

table.animate-appear .ng-enter td, 
table.animate-appear .ng-leave.ng-leave-active td, 
table.animate-appear .ng-move td { 
    opacity: 0; 
    background-color: yellow; 
} 

table.animate-appear .ng-enter.ng-enter-active td, 
table.animate-appear .ng-leave td, 
table.animate-appear .ng-move.ng-move-active td { 
    opacity: 1; 
    background-color: white; 
} 

注:
1. divの要素が適切にアニメーション化するように見えます。それは比較のためのフィドルに含まれています。
2.テーブルの行をdiv要素に変更することはできません。
3.マイナータイムアウト(私のテストではわずか30ミリ秒)により、後続の行が適切にアニメートされます。 これは私の問題に実行可能な解決ではありません。 4.私はですng-enterアニメーションに関連するです。 5.テーブル行にアニメーションスタイルを適用しようとしましたが、成功しませんでした。

どうしてですか?さらに重要な点は、テーブル内のすべての新しい要素が適切にアニメーション化されるようにするにはどうすればよいですか?

+0

上記の例のフィドルは、「固定」バージョンです。非固定にリンクすることは可能ですか? (/ 6で終わるURLのように見えるのは '壊れた'バージョンです) – ryanm

+0

@ryanm - 上記のバージョンが間違った動作を示します。 「項目を追加」をクリックすると、最初の項目を適切にアニメートし、2番目の項目をアニメーション化し、3番目の項目をアニメートします(わずかなタイムアウトがあります)。固定バージョンはhttp://jsfiddle.net/cale_b/od7kam48/12/ –

+0

です。わかりました。ありがとうございます。 – ryanm

答えて

1

テーブルのアニメーションCSSが行とセルの両方に適用されるため、競合が発生しています。アニメーションが行にのみ適用されるようにCSSを変更すると、アニメーションが正しく反映されます。

table.animate-appear tr { 
    transition: all 1s ease; 
    opacity: 1; 
} 

table.animate-appear td { 
    padding: 5px 10px; 
    opacity: 1; 
} 

table.animate-appear .ng-enter, 
table.animate-appear .ng-move { 
    opacity: 0; 
    background-color: yellow; 
} 

table.animate-appear .ng-enter.ng-enter-active, 
table.animate-appear .ng-leave, 
table.animate-appear .ng-move.ng-move-active { 
    opacity: 1; 
    background-color: white; 
} 
+0

ここに[更新](http://jsfiddle.net/od7kam48/10/)があります。また、私はそれをクロームで実行しています。私にはそれは正しいように見えますが、多分それは私が理解できない別の方法で失敗しているでしょう。 – xrgb

+0

この[fiddle](http://jsfiddle.net/od7kam48/11/)では、tr要素にのみ適用する背景色のCSSアニメーションも更新しましたが、divのバージョンは遅いものの、同じように見えるようです除去する。 – xrgb

+0

私はそれを関連するビットに減らしました。答えの中のコードを更新して、正しい/縮小されたCSSを含めるなら、私は受け入れます。 「減らされた」CSSのためのこのフィドルを見てください:http://jsfiddle.net/cale_b/od7kam48/12/ –

関連する問題