CSS溢出的問題,我已經AngularJS,引導和Animate.css成立這樣當我點擊一個面板頭,身體幻燈片英寸與Animate.css和Bootstrap選
爲了讓包含動畫在面板中,我添加了overflow-x: hidden
到.panel
類。
然而,這導致我使用的.panel-body
DIV下拉插件被切斷(西爾維奧Moreto的優秀bootstrap-select plugin使用an AngularJS directive實現)。
見下文:
這裏有一個plunker這樣你就可以查看代碼,看看自己:
http://plnkr.co/edit/dAP9OqFI0h95qtC56FTE?p=preview
如果我使用一個普通<select>
代替插件,它工作正常。
下拉插件添加了標記,我認爲這是在div的overflow-x
規則的擺佈......因此導致問題。
反正我可以修改我的標記/ CSS允許選擇當面板的下拉菜單「突圍」?
優選地,我想避免修改插件的CSS。
感謝您的幫助! :)
編輯: 爲了澄清,這是影響我想:http://i.imgur.com/WMluRjg.png :)
解決!
我以前接受的答案,在這裏我使用ngAnimate的beforeRemoveClass
方法來隱藏溢出立即「NG隱藏」類被刪除之前的變化,然後將其添加回CSS動畫完成後:
app.animation('.slide', function() {
return {
removeClass: function(element, className, doneFn) {
var duration = 0.3;
element.css('-webkit-animation', 'slideInRight '+(duration)+'s')
.css('-moz-animation', 'slideInRight '+(duration)+'s')
.css('-o-animation', 'slideInRight '+(duration)+'s')
.css('animation', 'slideInRight '+(duration)+'s');
// After the css animation has completed, allow overflow on the parent panel again.
setTimeout(function(){
element.closest('.panel').removeClass('no-overflow');
}, (duration * 1000));
doneFn();
},
beforeRemoveClass: function(element, className, doneFn){
// Prevent overflow on closest panel
element.closest('.panel').addClass('no-overflow');
doneFn();
}
}
});
@ humble.rumble.6x3首先,感謝您的答覆! :)我還沒有嘗試過,但我希望避免使用Javascript(特別是基於事件的JS),如果可能的話......如果我無法用CSS實現它,我會考慮一個JS替代方案。 – Andrew