1
我有一個WinJS.UI.Flyout
,當內容添加到可見時,我想向上擴展。彈出的錨點位於屏幕的底部。如果我打電話flyout.show(anchor, 'top');
,它首先看起來是正確的,但是當添加內容時,它會在屏幕底部展開。如果我打電話給flyout.show(anchor, 'bottom');
它向上擴展,但它也覆蓋了我不想要的錨元素。使WinJS.UI.Flyout向上擴展
我有一個WinJS.UI.Flyout
,當內容添加到可見時,我想向上擴展。彈出的錨點位於屏幕的底部。如果我打電話flyout.show(anchor, 'top');
,它首先看起來是正確的,但是當添加內容時,它會在屏幕底部展開。如果我打電話給flyout.show(anchor, 'bottom');
它向上擴展,但它也覆蓋了我不想要的錨元素。使WinJS.UI.Flyout向上擴展
這可以通過爲彈出窗口使用-ms-flexbox顯示並將其內容打包到最後來完成。
彈出背景可以設置爲透明;它的大小可以設置爲最大可能;這樣它就可以作爲一個外部容器,將其內容與最終對齊。可擴展的內容被放置在另一個div flyout-content
中,背景爲白色。
<div data-win-control="WinJS.UI.Flyout" id="flyout">
<div class="flyout-content">
expandable content here
expandable content here
expandable content here
expandable content here
</div>
</div>
CSS:
#flyout
{
background-color: transparent;
border: 0;
display: -ms-flexbox;
-ms-flex-pack: end;
-ms-flex-direction: column;
height: 400px;
}
.flyout-content
{
padding: 20px;
background-color: white;
}
這肯定上了'#flyout'我想要的樣子,但預設的'height'意味着在應用一種無形的部分,其中攻不關閉飛出去。有什麼辦法解決這個問題嗎? –
這絕對是一種解決方法。 '#flyout'本身可以捕獲點擊事件,如果它是目標 - 隱藏自己。但這正在進一步擴展解決方法。 – Sushil