我在使用WinJS、javascript和HTML构建的Windows8应用程序中遇到了一个奇怪的行为。在我正在实现的特定页面中,有几个div的CSS规则如下:
.col {
border: 1px solid none;
overflow-x: hidden;
overflow-y: auto;
height: 100%;
margin: 0px;
width: 100%;
}问题是,当我右击调用主应用程序栏时,div中的滚动内容会捕捉到div的顶部。换句话说,div的滚动位置丢失了。我试过很多方法来解决这个问题,但是什么也没有出现。如何防止滚动内容在调用App Bar时跳来跳去。
谢谢!
发布于 2013-04-19 11:46:31
建议页面使用-ms-grid。在这种情况下,应用程序栏将覆盖div,这是可以的,并且可能是正确的行为,你也可以在其他应用程序中看到。
html:
<div class="test5 fragment">
<header aria-label="Header content" role="banner">
<button class="win-backbutton" aria-label="Back" disabled type="button"></button>
<h1 class="titlearea win-type-ellipsis">
<span class="pagetitle">test page</span>
</h1>
</header>
<section class="content" aria-label="Main content" role="main">
<div class="test-content">
Text here.
</div>
</section>
</div>
<div id="appbar" data-win-control="WinJS.UI.AppBar">
<button data-win-control="WinJS.UI.AppBarCommand" data-win-options="{id:'cmd', label:'Command', icon:'placeholder'}" type="button"></button>
</div> css:
.test5.fragment section[role=main] {
display: -ms-grid;
-ms-grid-rows: 1fr;
-ms-grid-columns: 1fr;
}https://stackoverflow.com/questions/16090650
复制相似问题