2015-09-05 49 views
0

我試圖在UI Bootstrap模式窗口中使用Ui Bootstrap警報按鈕時使用隱藏。我希望動畫可以將警報滑入和滑出,並同時淡入淡出。在Modal窗口中顯示/隱藏Ui Bootstrap警報的動畫顯示AngularJS

警報正在顯示和隱藏,但隱藏/顯示動畫完全不起作用,而且完全讓我困惑。

展示隱藏代碼:

<alert type="danger" close="hideAlert = true" 
    ng-hide="hideAlert" class="ng-hide">ERROR!</alert> 

動畫的CSS(這可能是完全不正確的......)是:

.alert.ng-hide-add, 
.alert.ng-hide-remove { 

    -moz-transition: 0.5s linear all; 
    -o-transition: 0.5s linear all; 
    -webkit-transition: 0.5s linear all; 
    transition: 0.5s linear all; 

    display: block !important; 
    opacity: 1; 
    max-height:50px; 
} 


.alert.ng-hide { 
    opacity: 0; 
    max-height:0px; 
} 

我已經包括這裏PLNKR到顯示它在它所有的罵名:http://plnkr.co/edit/rQ27FDLHapOTadPJuz6z

請幫助....

回答

0

無需使用.ng-hide-add和.ng-hide-remove類,只需指定.alert中的轉換並更改.alert.ng-hide中的屬性:

.alert { 
    -moz-transition: 0.5s linear all; 
    -o-transition: 0.5s linear all; 
    -webkit-transition: 0.5s linear all; 
    transition: 0.5s linear all; 

    display: block !important; 
    opacity: 1; 
    max-height:50px; 
} 


.alert.ng-hide { 
    opacity: 0; 
    max-height:0px; 
} 
+0

我已經完成了更新版本建議:http://plnkr.co/edit/8g0sElHHsuyzqo5FNj57我忽略了'display:block!important';'行,因爲它似乎留下了一個空白區域的隱藏警報消息的大小,這並不是真的想要的。現在,如果沒有這種轉換,轉換就不起作用,它只是在任何衰落或收縮發生之前隱藏起來...... –

+0

'display:block!important;'不能省略,請參閱[ng-hide]的文檔(https:/ /docs.angularjs.org/api/ng/directive/ngHide)。然而,爲了擺脫不必要的空間,你可以像這樣[plunker](http://plnkr.co/edit/WcecsElbIkzM8Dzds8A8?p=preview) – gyantasaurus

+0

設置填充爲0謝謝gyantasaurus。另一件事 - 我在我的項目中的其他地方使用動畫,並且當頁面加載時(我正在使用chrome),它似乎很快隱藏了應該隱藏的所有內容。我想知道這是否也與顯示設置有關? –