Rumah > hujung hadapan web > tutorial css > Bagaimana untuk Menggunakan Peralihan dan Animasi CSS dengan Arahan ngIf Sudut 2?

Bagaimana untuk Menggunakan Peralihan dan Animasi CSS dengan Arahan ngIf Sudut 2?

Mary-Kate Olsen
Lepaskan: 2024-10-30 03:18:28
asal
624 orang telah melayarinya

How to Use CSS Transitions and Animations with Angular 2's ngIf Directive?

Angular 2 ngIf dan CSS Transition/Animation

Angular 2's ngIf direktif biasanya digunakan untuk memberikan unsur bersyarat berdasarkan ungkapan yang diberikan. Walau bagaimanapun, apabila menggunakan peralihan atau animasi CSS pada elemen ini, gelagat yang tidak dijangka mungkin berlaku.

Pertimbangkan coretan kod berikut:

// ...
<div class="note" [ngClass]="{'transition':show}" *ngIf="show">
  <p> Notes</p>
</div>
// ...
Salin selepas log masuk

Dalam contoh ini, matlamatnya adalah untuk elemen div untuk slaid masuk dari kanan menggunakan CSS apabila persembahan ditetapkan kepada benar. Arahan *ngIf memastikan bahawa elemen hanya dipaparkan apabila rancangan adalah benar, tetapi apabila rancangan adalah palsu, elemen itu dialih keluar sepenuhnya daripada DOM.

Isu timbul kerana animasi atau peralihan CSS memerlukan elemen sasaran untuk hadir dalam DOM untuk tempoh animasi. Memandangkan *ngIf mengalih keluar elemen apabila rancangan adalah palsu, sebarang peralihan yang ditakrifkan dalam CSS tidak akan berkuat kuasa.

Penyelesaian:

Untuk menangani isu ini, adalah disyorkan untuk menggunakan atribut [tersembunyi] dan bukannya ngIf untuk menyembunyikan elemen yang sepatutnya dianimasikan.

// ...
<div class="note" [ngClass]="{'transition':show}" [hidden]="!show">
  <p> Notes</p>
</div>
// ...
Salin selepas log masuk

Dengan menggunakan [tersembunyi], elemen itu masih ada dalam DOM tetapi keterlihatannya ditetapkan kepada "tersembunyi" apabila rancangan itu palsu. Ini memastikan bahawa elemen tersedia untuk animasi atau peralihan CSS untuk digunakan.

Atas ialah kandungan terperinci Bagaimana untuk Menggunakan Peralihan dan Animasi CSS dengan Arahan ngIf Sudut 2?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan