【发布时间】:2016-08-04 22:41:21
【问题描述】:
我的标题中有一个下拉菜单(在此示例中始终打开)。当菜单打开时,它会在打开时激活标题滚动。如何在不激活垂直标题滚动条的情况下使菜单可见?请注意,我需要在标题上设置overflow-x: hidden,因为如果人们在标题中添加很多元素,标题水平滚动不应该激活。溢出的元素应该水平隐藏。
body{
padding: 0;
margin: 0;
}
.container{
display: flex;
flex-direction: column;
}
.header{
padding: 12px;
flex: 0 0 75px;
background: yellow;
overflow-x: hidden;
}
.content{
flex: 1 1 auto;
padding: 12px;
}
.dropdown{
position: relative;
}
.menu{
padding: 12px;
position: absolute;
background: white;
top: 100%;
left: 0;
}
ul{
list-style: none;
margin: 0;
padding: 0;
}
<div class="container">
<div class="header">
<div class="dropdown">
<button>Dropdown</button>
<div class="menu">
<ul>
<li>one</li>
<li>two</li>
<li>three</li>
<li>four</li>
</ul>
</div>
</div>
</div>
<div class="content">
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sequi distinctio sit asperiores tenetur dolorum ratione cupiditate, ea, quia numquam, inventore aspernatur repudiandae, sapiente recusandae dolorem. Quidem rem molestias, fugit molestiae.
</div>
</div>
例如: stackoverflow 下拉菜单:当标题没有滚动条的情况下打开时,下拉菜单会出现在标题上方。我希望发生这样的事情:
【问题讨论】:
-
你到底想做什么?为什么会有一个没有任何功能的按钮? “激活卷轴”是什么意思?
-
请指定您的确切目标。你是想去掉滚动条还是动态调整标题高度?
-
我试图在标题中显示一个下拉菜单。这是一种粗略的展示方式,但足以展示我面临的问题。按钮唯一能做的就是隐藏和显示菜单。如果显示菜单,则激活标题滚动。如何避免激活标题滚动但仍显示菜单?
-
看来您的示例并不完整,据我了解,当您切换菜单时会发生一些事情,并且切换脚本不是您示例的一部分......或者是我还是误会你了?
-
如果禁用滚动,下拉菜单的高度会很大。所以你只需要提高 .header-element 的高度。