TailwindCSS - 如何使元素的下拉菜单不会将其他元素推出侧边栏中的边界?
P粉505450505
P粉505450505 2023-09-03 19:21:03
[Vue.js讨论组]

我基本上有一个可以包含多个部分(蓝色)的侧边栏,其中每个部分都可以打开/关闭,并且可以包含多个项目(红色)。打开时,我希望展开的元素不要将其他蓝色部分推到边框之外,而是将它们推到边框之外,并在展开的部分上进行溢出 y 滚动。以下是它的外观 (1) 和它应该是什么样子 (2) 的屏幕截图:

这里是使用的代码:

<div id="container" class="h-96 w-52 overflow-hidden bg-black">
  <div class="h-[100px] w-full border border-black bg-blue-500"></div>
  <div id="item-container" class="h-fit space-y-1 overflow-y-scroll">
    <div class="h-10 w-full bg-red-500"></div>
    <div class="h-10 w-full bg-red-500"></div>
    <div class="h-10 w-full bg-red-500"></div>
    <div class="h-10 w-full bg-red-500"></div>
    <div class="h-10 w-full bg-red-500"></div>
    <div class="h-10 w-full bg-red-500"></div>
  </div>
  <div class="h-20 w-full border border-black bg-blue-500"></div>
  <div class="h-20 w-full border border-black bg-blue-500"></div>
</div>
<style>

.h-96{
height: 24rem;
}
.w-52{
width: 13rem;
}
.overflow-hidden{
overflow: hidden;
}
.bg-black{
background-color: rgb(0 0 0);
}
.w-full{
width:100%;
}
.border{
border-width: 1px;
}
.border-black{
border-color: rgb(0 0 0);
}
.bg-blue-500{
background-color: rgb(59 130 246);
}
.h-fit{
height: fit-content;
}
.space-y-1{
margin-top: 0.25rem;
}
.overflow-y-scroll{overflow-y: scroll;}
.h-10{height: 2.5rem;}
.bg-red-500{background-color: rgb(239 68 68);}
.h-20{height: 5rem;}
.h-\[100px\]{
height:100px;
}

</style>

预先感谢您提供的任何帮助!

P粉505450505
P粉505450505

全部回复(1)
P粉037215587

您可以使容器弯曲并使蓝色项目不收缩。

  • 为容器添加了相关类:flex flex-col
  • 对于蓝色物品:shr​​ink-0
<div id="container" class="h-96 w-52 overflow-hidden bg-black flex flex-col">
  <div class="h-[100px] w-full border border-black bg-blue-500 shrink-0"></div>
  <div id="item-container" class="space-y-1 overflow-y-scroll">
    <div class="h-10 w-full bg-red-500"></div>
    <div class="h-10 w-full bg-red-500"></div>
    <div class="h-10 w-full bg-red-500"></div>
    <div class="h-10 w-full bg-red-500"></div>
    <div class="h-10 w-full bg-red-500"></div>
    <div class="h-10 w-full bg-red-500"></div>
  </div>
  <div class="h-20 w-full border border-black bg-blue-500 shrink-0"></div>
  <div class="h-20 w-full border border-black bg-blue-500 shrink-0"></div>
</div>
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号