首页 > 解决方案 > 使嵌套在行中的引导列采用全屏高度

问题描述

我有一些我正在制作的项目的代码,但我在引导布局上遇到了问题。我想让这些列加起来是全屏高度。是我现在拥有的一个jsfiddle。我将所有嵌套在列中的行设置为

height:100%

因为这是我能得到的最接近我想要的东西。我想做一些看起来像这样的东西(请原谅我糟糕的 MS 绘画技巧): 在此处输入图像描述

这是我的代码,以防链接不起作用:

<!DOCTYPE html>
<html lang="en">
<head>

<!-- Link to css file -->
<link rel="stylesheet" type="text/css" href="/static/main.css" mesdia="screen"/>

<!-- Bootstrap CDN-->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>

<meta charset="UTF-8">
<title>Layout</title>
<!--<h1>Welcome to the layout</h1>
<p>Where would you like to navigate to?</p>-->
</head>
<body>

<div class="container-fluid">
<div class="row" id="navcols">

    <div class="col layoutcol">
        <div class="row layoutrow" id="LeftCol1">Row</div>
        <div class="row layoutrow" id="LeftCol2">Row</div>
    </div>

    <div class="col-sm-6 layoutcol">
        <div class="row MidCol layoutrow">Row</div>
        <div class="row MidCol layoutrow">Row</div>
        <div class="row MidCol layoutrow">Row</div>
        <div class="row MidCol layoutrow">Row</div>
        <div class="row MidCol layoutrow">Row</div>
    </div>

    <div class="col layoutcol">
        <div class="row layoutrow" id="RightCol">Row</div>
    </div>

</div>
</div>

<!--
<div class="container-fluid">
    <h1 id="test">Welcome to my page! Where do you want to navigate to?</h1>
</div>-->

这是CSS

html,body {
height: 100%;

宽度:100%;}

.col {
background-color:lime;
}

#LeftCol1 {
background-color:blue;
height: 100%;
}

#LeftCol2 {
background-color:red;
height: 100%
}

.layoutrow{
border:solid 1px black;
}

.MidCol{
height: 100%;
}

#RightCol {
height: 100%;
}

我该如何进行此更改?谢谢!

标签: csstwitter-bootstrapbootstrap-4

解决方案


使用 css 和 bootstrap 组合可以实现您所寻求的。
这里我做了什么。

<!DOCTYPE html>
<html lang="en">

  <head>
    <title>Grid </title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
    <style>
    .first .first_row{
      background-color: #ff0000;
      height: 50vh;
      border:2px solid black;
    }
    .first .second_row{
      background-color: #ffff00;
      height: 50vh;
      border:2px solid black;
    }

    .second .first_row{
      background-color: #cc99ff;
      height: 20vh;
      border:2px solid black;
    }
    .second .second_row{
      background-color: #ff0066;
      height: 20vh;
      border:2px solid black;
    }
    .second .third_row{
      background-color: #0099ff;
      height: 20vh;
      border:2px solid black;
    }
    .second .fourth_row{
      background-color: #006666;
      height: 20vh;
      border:2px solid black;
    }
    .second .fifth_row{
      background-color: #000099;
      height: 20vh;
      border:2px solid black;
    }
    .third .first_row{
      background-color: #006600;
      height: 100vh;
      border:2px solid black;
    }
    </style>
  </head>
<body>
  <div class="container-fluid">
    <div class="row">
      <div class="col-md-3 first">
        <div class="row first_row">
        </div>
        <div class="row second_row">
        </div>  
      </div>
      <div class="col-md-6 second">
        <div class="row first_row">
        </div>
        <div class="row second_row">
        </div>
        <div class="row third_row">
        </div>
        <div class="row fourth_row">
        </div>
        <div class="row fifth_row">
        </div>
      </div>
      <div class="col-md-3 third">
        <div class="row first_row">
        </div>    
      </div>    
    </div>
  </div>
</body>
</html>

我希望它会帮助你。

PS不要介意颜色。


推荐阅读