2017-09-23 34 views
0

我一直在搜索一段时间的stackoverflow,我不认为这已被回答。我有一个div上的条件类,当布尔变量设置为true时,它会被添加到div中。下面的代码:Angular 4 |转换不适用于有条件的CSS类

<div [class.modalwindow-show]="modalState" class="modals"> 

    [...] 

</div> 

当用户点击一个按钮,该变量设置为true和类modalwindow秀被添加到div。我的问题是,由于某种原因,css转换不起作用,背景只是变化而没有转换。我有这两类:

.modals{ 
    display: none; 
    position: fixed; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    z-index: 1000; 
    transition: all .30s ease-in-out; 
} 

.modalwindow-show{ 
    background: rgba(10,10,10,0.5); 
    display: block; 
} 

有谁知道为什么过渡不起作用?

回答

0

固定!

我完全删除了display:none和display:block,现在正在使用visibility:hidden和visibility:visible。显示器正在压倒过渡。

.modals{ 
    visibility: hidden; 
    position: fixed; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    z-index: 1000; 
    transition: all .30s ease-in-out; 
} 

.modalwindow-show{ 
    visibility: visible; 
    background: rgba(10,10,10,0.5); 
} 
+0

我只是想发表相同的内容。是的,过渡不会与显示:https://stackblitz.com/edit/angular-uazrlb?file=app%2Fapp.component.css – Vega

+0

发布它作为一个答案,我将它标记为正确的答案: ) – DerJP

+1

谢谢!但是你已经回答了,并且可以在几个小时内标记为答案:) – Vega