是否有可能在垂直可滚动列表中水平溢出项目?
我在这里有一个Codepen示例:
http://codepen.io/baskuipers/pen/GqQYRJ
var $item = $('#1'),
$button = $('.button');
$button.on("click", function() {
$item.toggleClass('addMargin');
});Run Code Online (Sandbox Code Playgroud)
.sidenav {
width: 300px;
background-color: grey;
position: fixed;
padding: 20px;
}
.addMargin {
margin-left: 60px;
}
.item {
width: 100%;
overflow-y: auto;
height: 100vh;
z-index: 5;
position: relative;
}
.sub-item {
transition: margin-left 1s cubic-bezier(0.36, -0.48, 0, 2.22);
background-color: orange;
height: 100px;
width: 100%;
margin-bottom: 10px;
z-index: 10;
position: relative;
}
body {
box-sizing: border-box;
margin: 0;
padding: 0;
}Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="sidenav">
<button class="button">test</button>
<div class="item">
<div id="1" class="sub-item"></div>
<div class="sub-item"></div>
<div class="sub-item"></div>
<div class="sub-item"></div>
<div class="sub-item"></div>
</div>
</div>Run Code Online (Sandbox Code Playgroud)
在示例中,我希望将黄色项从列表中删除。滚动条的可见性不是问题。
有什么建议么?CSS / JavaScript?
谢谢!
阅读/sf/answers/450343281/后,答案似乎是否定的,这是不可能的。您需要设置overflow-x: visible,但由于您设置了 Overflow-y ,因此它被视为auto隐藏内容。
这可能并不能完全解决您的问题,但如果您添加:
margin-right: -100px; padding-right: 100px;
您.item可以移动滚动条并为框内的溢出留出更多空间。我能找到最接近的解决方案。