使用MDL 1.0(http://www.getmdl.io/)我试图在更大和更高的位置上滚动标题。小屏幕。但它只能在更大的屏幕上滚动(比如在我的电脑上),但不能在较小的屏幕上滚动。
这是html:
<html>
<head>
<link rel="stylesheet" href="https://storage.googleapis.com/code.getmdl.io/1.0.0/material.teal-light_green.min.css" />
<script src="https://storage.googleapis.com/code.getmdl.io/1.0.0/material.min.js"></script>
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
</head>
<body>
<!-- Simple header with scrollable tabs. -->
<div class="mdl-layout mdl-js-layout mdl-layout--fixed-header">
<header class="mdl-layout__header mdl-layout__header--scroll">
<div class="mdl-layout__header-row">
<!-- Title -->
<span class="mdl-layout-title">Title</span>
</div>
<!-- Tabs -->
<div class="mdl-layout__tab-bar mdl-js-ripple-effect">
<a href="#scroll-tab-1" class="mdl-layout__tab is-active">Tab 1</a>
<a href="#scroll-tab-2" class="mdl-layout__tab">Tab 2</a>
<a href="#scroll-tab-3" class="mdl-layout__tab">Tab 3</a>
<a href="#scroll-tab-4" class="mdl-layout__tab">Tab 4</a>
<a href="#scroll-tab-5" class="mdl-layout__tab">Tab 5</a>
<a href="#scroll-tab-6" class="mdl-layout__tab">Tab 6</a>
</div>
</header>
<div class="mdl-layout__drawer">
<span class="mdl-layout-title">Title</span>
</div>
<main class="mdl-layout__content">
<section class="mdl-layout__tab-panel is-active" id="scroll-tab-1">
<div class="page-content"><br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!<br />New line!</div>
</section>
<section class="mdl-layout__tab-panel" id="scroll-tab-2">
<div class="page-content"><!-- Your content goes here --></div>
</section>
<section class="mdl-layout__tab-panel" id="scroll-tab-3">
<div class="page-content"><!-- Your content goes here --></div>
</section>
<section class="mdl-layout__tab-panel" id="scroll-tab-4">
<div class="page-content"><!-- Your content goes here --></div>
</section>
<section class="mdl-layout__tab-panel" id="scroll-tab-5">
<div class="page-content"><!-- Your content goes here --></div>
</section>
<section class="mdl-layout__tab-panel" id="scroll-tab-6">
<div class="page-content"><!-- Your content goes here --></div>
</section>
</main>
</div>
</body>
</html>
如您所见,标题是可滚动的,但仅适用于较大的屏幕(如在PC上)。但是如果你让窗口变小,或者只是在较小的屏幕上运行它,那么标题是固定的而不是可滚动的。
此外,如果我从外部div(主div)中删除mdl-layout--fixed-header
,则标题会在较小的屏幕上消失。
知道如何在更大和更小的屏幕上滚动标题吗?
答案 0 :(得分:8)
我有同样的问题,我通过添加&#34; flex-shrink:0;&#34;解决了这个问题。到.mdl-layout__content
答案 1 :(得分:2)
我在MDL Wordpress主题上遇到了同样的问题。我通过添加以下CSS获得标题以在小屏幕尺寸上滚动页面的其余部分:
@media screen and (max-width: 850px) {
.mdl-layout__container {
position: static;
}
}
使用此方法可以在滚动时将移动设备上的Chrome网址栏推离屏幕(这是我的主要目标)。
我还使用此CSS在小屏幕上的页面顶部显示标题:
@media screen and (max-width: 850px) {
.mdl-layout__header {
display: block;
}
}
答案 2 :(得分:1)
作为Devleshes帖子的后续内容,用以下内容替换mdl-layout__content的高度将阻止双滚动条。
以下代码片段为我解决了这个问题:
.mdl-layout__content {
flex-shrink: 0;
}
.mdl-layout__drawer.is-visible~.mdl-layout__content {
height: calc(100vh - 50px);
}
(其中50px是我的mdl-layout__header的高度)
答案 3 :(得分:0)
确保您设置了元视口标记:
<meta name="viewport" content="width=device-width">
如果这不起作用,那么我们可能在移动设备上没有可滚动的标题。由于固定类设置布局以使其保持在顶部。如果视口没有修复它,请为此提出问题,核心团队可以进一步分类。