«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Вот несколько возможных названий: 1. Как заставить CSS-переходы работать с ngIf в Angular 2? 2. Почему ngIf нарушает мои CSS-переходы в Angular 2? 3. Angular 2: объединение ngIf и CSS-анимации для плавного преобразования

Вот несколько возможных названий: 1. Как заставить CSS-переходы работать с ngIf в Angular 2? 2. Почему ngIf нарушает мои CSS-переходы в Angular 2? 3. Angular 2: объединение ngIf и CSS-анимации для плавного преобразования

Опубликовано 8 ноября 2024 г.
Просматривать:646

以下是几种可能的标题:

1. How to Make CSS Transitions Work with `ngIf` in Angular 2? 
2. Why Does `ngIf` Break My CSS Transitions in Angular 2?
3. Angular 2: Combining `ngIf` and CSS Animations for Smooth Transitions
4. Troubleshooting CSS Transitions and `ngIf` in

ngIf и переходы/анимации CSS в Angular 2

Как вставить элемент div справа с помощью CSS в Angular 2?

Notes

.transition{
  -webkit-transition: opacity 1000ms ease-in-out,margin-left 500ms ease-in-out;
  -moz-transition: opacity 1000ms ease-in-out,margin-left 500ms ease-in-out;
  -ms-transition: opacity 1000ms ease-in-out,margin-left 500ms ease-in-out ;
  -o-transition: opacity 1000ms ease-in-out,margin-left 500ms ease-in-out;
  transition: opacity 1000ms ease-in-out,margin-left 500ms ease-in-out;
  margin-left: 1500px;
  width: 200px;
  opacity: 0;
}

.transition{
  opacity: 100;
  margin-left: 0;
}

Этот код работает нормально, если вы просто используете [ngClass] для переключения классов и используете преимущества непрозрачности. Но я не хочу, чтобы этот элемент отображался с самого начала, поэтому я сначала «скрываю» его с помощью ngIf, но тогда переход не будет работать.

Обновление 4.1.0

использует API анимации перехода, больше не нужно использовать [скрытый] или [*ngIf скрытый].

Обновление 2.1.0

Просмотр анимации на angular.io

import { trigger, style, animate, transition } from '@angular/animations';

@Component({
  selector: 'my-app',
  animations: [
    trigger(
      'enterAnimation', [
        transition(':enter', [
          style({transform: 'translateX(100%)', opacity: 0}),
          animate('500ms', style({transform: 'translateX(0)', opacity: 1}))
        ]),
        transition(':leave', [
          style({transform: 'translateX(0)', opacity: 1}),
          animate('500ms', style({transform: 'translateX(100%)', opacity: 0}))
        ])
      ]
    )
  ],
  template: `
    

    
xxx
` }) export class App { show:boolean = false; }

Исходный ответ

Когда выражение становится ложным, *ngIf удалит элемент из DOM. Несуществующий элемент не может быть перенесен.

можно заменить скрытым атрибутом:

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3