【发布时间】:2020-03-31 05:40:10
【问题描述】:
我想实现以下目标:
-
宽度比率必须满足
Sites : User : Download = 2:8:2 -
Sites-Banner、Sites-Search、Download-Banner、Download-Summary都应该具有相同的高度 -
User-Login必须是Sites-Banner和Sites-Search的组合高度(或Download-Banner和Download-Summary) -
Sites-List、User-Operations、Download-Details的高度必须是独立的,并且可以根据需要进行扩展。
这是我的代码:Fiddle(检查更新 1)
<div>
<div class="row">
<div class="col-2">
<div class="row">
<div class="col bg-primary">
<p id="sites-banner">Sites Banner</p>
</div>
</div>
<div class="row">
<div class="col bg-secondary">
<p id="sites-search">Sites Search</p>
</div>
</div>
<div class="row">
<div class="col bg-success">
<p id="sites-list">Sites List</p>
</div>
</div>
</div>
<div class="col-8">
<div class="row">
<div class="col bg-danger">
<p id="user-login">User Login</p>
</div>
</div>
<div class="row">
<div class="col bg-warning">
<p id="user-operations">User Operations</p>
</div>
</div>
</div>
<div class="col-2">
<div class="row">
<div class="col bg-info">
<p id="downloader-banner">Download Banner</p>
</div>
</div>
<div class="row">
<div class="col bg-light">
<p id="download-summary">Download Summary</p>
</div>
</div>
<div class="row">
<div class="col bg-dark">
<p id="download-details">Download Details</p>
</div>
</div>
</div>
</div>
</div>
- 我无法将
User-Login的高度 与Sites-Banner和Sites-Search对齐[完成:更新1] -
Sites-List,User-Operations&Download-Details不独立扩展
更新 1: New Code
- 我得到
User-Login的组合高度为Sites-Banner和Sites-Search,方法是将它们包装在一个row(<div class="row">) 中 - 但我仍然无法达到
Sites-List、User-Operations、Download-Details的高度独立。
更新 2: New Code
- 让
Sites-List、User-Operations、Download-Details的高度看起来独立。 - 但是列之间有很多填充,这会在它们之间引入空白,使它们看起来不对齐
更新 3: Fiddle
虽然在 Update 2 代码中看起来 Sites-List、User-Operations 和 Download Details 具有不同的高度,但它们实际上并没有。它们看起来如此,因为我们仅将背景颜色类应用于包含列表的 div 元素。
关于列之间的填充问题,可以通过在两行上应用mx-0类属性来解决,将边距设为0
默认情况下,行的负边距为 -15 px。
结帐:Bootstrap negative margin on rows
没有mx-0 会导致页面出现水平滚动条。结帐:Bootstrap columns cause horizontal scrollbar
总结:
- 将
row和col视为表的tr和td - 始终将内容放入
col -
col必须有row作为父级。结帐:Bootstrap Grid Working & Guidlines
【问题讨论】:
-
@ikiK 谢谢!现在我明白我需要创建 2 行。请检查更新,因为我无法让 row2 中 cols 的高度独立。
标签: html css twitter-bootstrap bootstrap-4