所以,在嘗試使用Flexbox建立一個有用的模式時,我發(fā)現(xiàn)了一個似乎是瀏覽器問題的東西,我想知道是否有一個已知的修復或解決方法-或者關(guān)于如何解決它的想法。我想解決的問題有兩個方面。首先,獲得垂直中心的模態(tài)窗口,這是按預期工作的。第二種方法是讓模態(tài)窗口從外部滾動-因此整個模態(tài)窗口滾動,而不是其中的內(nèi)容(這樣您就可以有下拉列表和其他UI元素,這些元素可以擴展到模式邊界之外-比如自定義日期選擇器,等等)。然而,當將垂直對中和滾動條組合在一起時,當模式的頂部開始溢出時,就會變得不可訪問。在上面的例子中,您可以調(diào)整大小以強制溢出,這樣做可以讓您滾動到模態(tài)的底部,而不是頂部(第一段被切斷)。下面是示例代碼的鏈接(高度簡化)https://jsfiddle.net/dh9k18k0/2/.modal-container {
position: fixed;
top: 0;
left: 0;
bottom: 0;
right: 0;
background: rgba(0, 0, 0, 0.5);
overflow-x: auto;}.modal-container .modal-window {
display: -ms-flexbox;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
// Optional support to confirm scroll behavior makes sense in IE10
//-ms-flex-direction: column;
//-ms-flex-align: center;
//-ms-flex-pack: center;
height: 100%;}.modal-container .modal-window .modal-content {
border: 1px solid #ccc;
border-radius: 4px;
background: #fff;
width: 100%;
max-width: 500px;
padding: 10px}這個效果(當前)火狐,Safari,Chrome和Opera。有趣的是,如果你在IE10供應商前綴CSS中發(fā)表評論的話,它在IE10中的行為確實是正確的-我還沒有費心在IE11中進行測試,但假設它的行為與IE10的行為相匹配。任何想法都是好的。鏈接到已知的問題或這種行為背后的推理也是有用的。
添加回答
舉報
0/150
提交
取消