html - Bootstrap 使用另一列的空间
问题描述
我目前有一个反应项目,其中一个页面左侧有一个侧边栏,占据容器的 3 个列空间。
我有页面的剩余宽度,主要内容使用了另外 8 列。
侧边栏只有 7-8 个链接。页面的主要内容高度仅占 8 列。我需要的是当主要内容高度下降到侧边栏下方时,内容将填充侧边栏下方剩余的空白,而不是直接向下继续,侧边栏下方留下空白。
我在jsfiddle here中制作了一个虚拟 html 代码。我需要的是占用剩余容器空间的主要内容,包括在此图像中的侧边栏下方。(使用 Photoshop 编辑的图像,抱歉布局错误)
我大约搜索了 2 个小时,但找不到答案,或者我不知道如何表达我正在寻找的内容。
代码:`
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-BmbxuPwQa2lc/FVzBcNJ7UAyJxM6wuqIj61tLrc4wSX0szH/Ev+nYRRuWlolflfl" crossorigin="anonymous">
<style>
.container {
margin-top: 50px;
}
li {
margin: 30px;
}
.main-text {
border: 3px dashed red;
padding: 20px;
}
.overflow-text {
border: 3px solid blue;
padding: 20px;
}
</style>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-md-3 ">
<ul style="border: 2px solid black">
<li>List item</li>
<li>List item</li>
<li>List item</li>
<li>List item</li>
<li>List item</li>
<li>List item</li>
<li>List item</li>
</ul>
</div>
<div class="col-md-8">
<div class="main-text">
<h3>Main Content</h3>
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit. In tempora libero
placeat culpa nostrum dignissimos deserunt nisi dolorum dolore repudiandae necessitatibus
numquam architecto laudantium, asperiores, tenetur exercitationem molestias quo explicabo
officia sequi ad. Qui fugiat praesentium reiciendis nulla officia, debitis eveniet,
reprehenderit id nisi assumenda, nemo perferendis corporis magnam! Voluptatem nam sapiente,
tempore molestiae aspernatur voluptatibus impedit! Omnis facilis ut, vel rerum doloremque,
sunt
consequatur quaerat eligendi soluta, ratione accusantium hic saepe officia maiores enim
voluptate id? Neque, enim ipsam rerum, praesentium, autem eaque similique voluptas ratione
culpa
impedit harum dolor consequatur voluptatem eveniet nesciunt itaque doloremque aperiam
repellat
facilis incidunt atque animi voluptatum ex! Adipisci vitae autem deserunt vero porro amet
modi
omnis quidem aliquam tempore sit cupiditate eos obcaecati nostrum reprehenderit, harum
fugiat!
Est fugit expedita exercitationem mollitia nulla nemo iure esse deserunt! Nostrum laboriosam
doloribus molestiae qui aut excepturi, impedit nulla quam sint quisquam veritatis id
expedita,
velit dolores voluptates quos ipsam tempore nihil consectetur repudiandae. Cum recusandae
laboriosam facere numquam laudantium! Unde deleniti delectus facilis, quaerat dolorem quas
pariatur repellat. Unde voluptatibus atque aliquid amet, eaque hic dicta facere vitae eius?
Tempora hic pariatur vel reiciendis vitae, rerum necessitatibus repellendus, culpa
perspiciatis
maxime voluptatibus. In error reiciendis, aliquid illo aperiam, magnam optio ipsam, ratione
quam
perspiciatis dolorum minima repellat possimus quod dolore ea? Ea inventore perspiciatis esse
est
cum fuga praesentium sed, eum totam dolor quas accusamus iusto aperiam veritatis id, culpa
neque
omnis mollitia nostrum repudiandae, optio sit explicabo accusantium illo. Suscipit libero
distinctio rem quas non eveniet recusandae! Ipsum tempora cumque deserunt, perferendis
eligendi
nisi accusantium fugiat exercitationem rem qui expedita labore quam ea quasi voluptatum et
eos
alias atque, consequuntur repellat vero! Incidunt, reprehenderit cupiditate at, deserunt
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Perferendis fugiat omnis sequi
pariatur. Accusantium odit aut error. Iusto quos modi temporibus, libero minus, laboriosam
veritatis dignissimos laborum ullam ea pariatur nihil blanditiis nobis sapiente doloremque
illo explicabo! Sapiente quaerat iure dignissimos, deserunt illum delectus aperiam accusamus
accusantium adipisci libero eveniet.
</p>
</div>
</div>
</div>
</div>
</body>
`
解决方案
我不确定您是否可以通过将链接放在一列中并将文本放在另一列中来做您想做的事情,但是您可以将它们分成单独的部分,然后浮动链接 div 以进行更大的显示。
.container {
margin-top: 50px;
}
li {
margin: 30px;
}
.main-text {
border: 3px dashed red;
padding: 20px;
}
.overflow-text {
border: 3px solid blue;
padding: 20px;
}
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container">
<div class="row">
<div class="col-md-12">
<div class="float-md-start me-md-3">
<ul class="mb-1" style="border: 2px solid black">
<li><a href="https://google.com">List item</a></li>
<li><a href="https://google.com">List item</a></li>
<li><a href="https://google.com">List item</a></li>
<li><a href="https://google.com">List item</a></li>
<li><a href="https://google.com">List item</a></li>
<li><a href="https://google.com">List item</a></li>
<li><a href="https://google.com">List item</a></li>
</ul>
</div>
<div class="main-text">
<h3>Main Content</h3>
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit. In tempora libero placeat culpa nostrum dignissimos deserunt nisi dolorum dolore repudiandae necessitatibus numquam architecto laudantium, asperiores, tenetur exercitationem molestias quo explicabo officia sequi ad. Qui fugiat praesentium reiciendis nulla officia, debitis eveniet, reprehenderit id nisi assumenda, nemo perferendis corporis magnam! Voluptatem nam sapiente, tempore molestiae aspernatur voluptatibus impedit! Omnis facilis ut, vel rerum doloremque, sunt consequatur quaerat eligendi soluta, ratione accusantium hic saepe officia maiores enim voluptate id? Neque, enim ipsam rerum, praesentium, autem eaque similique voluptas ratione culpa impedit harum dolor consequatur voluptatem eveniet nesciunt itaque doloremque aperiam repellat facilis incidunt atque animi voluptatum ex! Adipisci vitae autem deserunt vero porro amet modi omnis quidem aliquam tempore sit cupiditate eos obcaecati nostrum reprehenderit, harum fugiat! Est fugit expedita exercitationem mollitia nulla nemo iure esse deserunt! Nostrum laboriosam doloribus molestiae qui aut excepturi, impedit nulla quam sint quisquam veritatis id expedita, velit dolores voluptates quos ipsam tempore nihil consectetur repudiandae. Cum recusandae laboriosam facere numquam laudantium! Unde deleniti delectus facilis, quaerat dolorem quas pariatur repellat. Unde voluptatibus atque aliquid amet, eaque hic dicta facere vitae eius? Tempora hic pariatur vel reiciendis vitae, rerum necessitatibus repellendus, culpa perspiciatis maxime voluptatibus. In error reiciendis, aliquid illo aperiam, magnam optio ipsam, ratione quam perspiciatis dolorum minima repellat possimus quod dolore ea? Ea inventore perspiciatis esse est cum fuga praesentium sed, eum totam dolor quas accusamus iusto aperiam veritatis id, culpa neque omnis mollitia nostrum repudiandae, optio sit explicabo accusantium illo. Suscipit libero distinctio rem quas non eveniet recusandae! Ipsum tempora cumque deserunt, perferendis eligendi nisi accusantium fugiat exercitationem rem qui expedita labore quam ea quasi voluptatum et eos alias atque, consequuntur repellat vero! Incidunt, reprehenderit cupiditate at, deserunt Lorem ipsum, dolor sit amet consectetur adipisicing elit. Perferendis fugiat omnis sequi pariatur. Accusantium odit aut error. Iusto quos modi temporibus, libero minus, laboriosam veritatis dignissimos laborum ullam ea pariatur nihil blanditiis nobis sapiente doloremque illo explicabo! Sapiente quaerat iure dignissimos, deserunt illum delectus aperiam accusamus accusantium adipisci libero eveniet.
</p>
</div>
</div>
</div>
</div>
推荐阅读
- python - 带有关键字参数的熊猫应用方法
- android-camera2 - camera2 API 可以告诉我当前曝光和理想曝光之间的区别吗?
- c# - Windows 快速启动 - 如何确定上次启动/重新启动发生的时间
- python - 如何以编程方式在 django oscar 中添加产品图片?
- javascript - Javascript:值不能通过条件,尽管它是真的
- python - 如何使用熊猫将字典列表分组为子列表?
- python - Keras:训练性能在完全相同的数据和架构下是不同的。唯一的区别是使用 .Sequential() 或 .Model()
- sql - SQL从视频观看日志中计算每次观看的观看时间
- python - 在 NumPy 中初始化和填充大数组,其中大多数值为 NaN
- haskell - 我怎样才能使这个函数的签名更精确