Bootstrap 4 网页布局设计的难点
我试图在左侧显示侧边栏,在右侧显示主要的动态内容。在这里,我为侧边栏提供了Bootstrap 4 网页布局设计的难点,bootstrap-4,material-design,frontend,Bootstrap 4,Material Design,Frontend,我试图在左侧显示侧边栏,在右侧显示主要的动态内容。在这里,我为侧边栏提供了col-sm-3,为内容提供了rest(col-sm-9)。 我在这里遇到的问题是,我的侧边栏不完全适合col-sm-3,因此侧边栏和主要内容之间的间隙很小(下图中的白色部分)。 如果我将侧边栏的网格减少到col-sm-2,那么主要内容会移回侧边栏,一些内容会被隐藏。在侧边栏的某个地方,我使用z-index作为1来管理背景图像、不透明度和内容 我怎样才能使侧边栏完全适合左侧的网格和右侧的动态内容,而中间没有这样的空白垂直
col-sm-3
,为内容提供了rest(col-sm-9
)。
我在这里遇到的问题是,我的侧边栏不完全适合col-sm-3
,因此侧边栏和主要内容之间的间隙很小(下图中的白色部分)。
如果我将侧边栏的网格减少到col-sm-2
,那么主要内容会移回侧边栏,一些内容会被隐藏。在侧边栏的某个地方,我使用z-index作为1来管理背景图像、不透明度和内容
我怎样才能使侧边栏完全适合左侧的网格和右侧的动态内容,而中间没有这样的空白垂直空间
我也尝试过使用table,但在这样做的同时,我的内容移到了侧边栏的后面。解决办法是什么
我的家。把手就像
<div class="container-fluid">
<div class="row">
<div class="col-sm-3">
{{> home/sidebar}}
</div>
<div class="col-sm-9" style="background-color: #EEF1F3; ">
{{{ body }}}
</div>
</div>
</div>
<div class="wrapper" >
<div class="sidebar sidebar-overwrite" data-color="azure" data-background-color="blue" data-image="../../../assets/img/sidebar-1.jpg">
<div class="mysidebar-wrapper"> </div>
<div class="logo" >
<a href="#" class="simple-text logo-normal NSC-link">
<img src="images/nepathya-logo.jpg" class="img img-responsive nepathya-logo" height="100px"><br>
<b>Nepathya Student Council</b>
</a>
</div>
<div class="sidebar-wrapper">
<ul class="nav">
<li class="nav-item active" id="nav-item-overwrite">
<a class="nav-link" href="/">
<i class="material-icons material-icon-overwrite">home</i>
<p class="sidebar-list-items">Home</p>
</a>
</li>
<li class="nav-item" id="nav-item-overwrite">
<a class="nav-link" href="/login">
<i class="material-icons material-icon-overwrite">person</i>
<p class="sidebar-list-items">Login/Register</p>
</a>
</li>
<!-- your sidebar here -->
<li class="nav-item" id="nav-item-overwrite">
<a class="nav-link" href="">
<i class="material-icons material-icon-overwrite">contact_support</i>
<p class="sidebar-list-items">Questions Collections</p>
</a>
</li>
<li class="nav-item" id="nav-item-overwrite">
<a class="nav-link" href="#0">
<i class="material-icons material-icon-overwrite">book</i>
<p class="sidebar-list-items">Solutions</p>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#0">
<i class="material-icons material-icon-overwrite">receipt</i>
<p class="sidebar-list-items">Notes</p>
</a>
</li>
<li class="nav-item" id="nav-item-overwrite">
<a class="nav-link" href="#0">
<i class="material-icons material-icon-overwrite">cloud_upload</i>
<p class="sidebar-list-items">Upload</p>
</a>
</li>
</ul>
</div>
</div>
</div>
.sidebar-overwrite {
z-index: 1;
}
.sidebar-overwrite .mysidebar-wrapper {
position: absolute;
z-index: -1;
top: 0;
bottom: 0;
left: 0;
right: 0;
background: url("../images/sidebar-1.jpg") center center;
opacity: .1;
width: 100%;
height: 100%;
}
.sidebar .logo .simple-text {
white-space: normal !important;
}
.sidebar-list-items {
font-weight: bold;
font-size: 24px;
}
.material-icon-overwrite {
color: black !important;
}
我的sidebar.css
就像
<div class="container-fluid">
<div class="row">
<div class="col-sm-3">
{{> home/sidebar}}
</div>
<div class="col-sm-9" style="background-color: #EEF1F3; ">
{{{ body }}}
</div>
</div>
</div>
<div class="wrapper" >
<div class="sidebar sidebar-overwrite" data-color="azure" data-background-color="blue" data-image="../../../assets/img/sidebar-1.jpg">
<div class="mysidebar-wrapper"> </div>
<div class="logo" >
<a href="#" class="simple-text logo-normal NSC-link">
<img src="images/nepathya-logo.jpg" class="img img-responsive nepathya-logo" height="100px"><br>
<b>Nepathya Student Council</b>
</a>
</div>
<div class="sidebar-wrapper">
<ul class="nav">
<li class="nav-item active" id="nav-item-overwrite">
<a class="nav-link" href="/">
<i class="material-icons material-icon-overwrite">home</i>
<p class="sidebar-list-items">Home</p>
</a>
</li>
<li class="nav-item" id="nav-item-overwrite">
<a class="nav-link" href="/login">
<i class="material-icons material-icon-overwrite">person</i>
<p class="sidebar-list-items">Login/Register</p>
</a>
</li>
<!-- your sidebar here -->
<li class="nav-item" id="nav-item-overwrite">
<a class="nav-link" href="">
<i class="material-icons material-icon-overwrite">contact_support</i>
<p class="sidebar-list-items">Questions Collections</p>
</a>
</li>
<li class="nav-item" id="nav-item-overwrite">
<a class="nav-link" href="#0">
<i class="material-icons material-icon-overwrite">book</i>
<p class="sidebar-list-items">Solutions</p>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#0">
<i class="material-icons material-icon-overwrite">receipt</i>
<p class="sidebar-list-items">Notes</p>
</a>
</li>
<li class="nav-item" id="nav-item-overwrite">
<a class="nav-link" href="#0">
<i class="material-icons material-icon-overwrite">cloud_upload</i>
<p class="sidebar-list-items">Upload</p>
</a>
</li>
</ul>
</div>
</div>
</div>
.sidebar-overwrite {
z-index: 1;
}
.sidebar-overwrite .mysidebar-wrapper {
position: absolute;
z-index: -1;
top: 0;
bottom: 0;
left: 0;
right: 0;
background: url("../images/sidebar-1.jpg") center center;
opacity: .1;
width: 100%;
height: 100%;
}
.sidebar .logo .simple-text {
white-space: normal !important;
}
.sidebar-list-items {
font-weight: bold;
font-size: 24px;
}
.material-icon-overwrite {
color: black !important;
}
这似乎是一个引导默认的填充和边距问题。将第3列和第9列的填充和边距归零,并相应地添加和删除
<div class="container-fluid">
<div class="row" style="padding:0; margin:0;">
<div class="col-sm-3" style"padding:0; margin:0;">
{{> home/sidebar}}
</div>
<div class="col-sm-9" style="padding:0; margin:0; background-color: #EEF1F3; ">
{{{ body }}}
</div>
</div>
</div>
{{>主页/侧边栏}
{{{body}}}
我用代码编辑了我的答案,这些代码应该将你的边距和填充置为零,并使所有内容都齐平。如果它不起作用,那么您还有一些其他问题。@John尝试发送一个指向该站点的链接或JS FIDDLE,或包含所有代码的代码片段,这样我们就可以看到问题所在并看到代码的运行情况。我已将边距和填充设置为0px。它也不起作用。请用叉子叉这个,帮我把它放在叉子上。