2016-12-15 67 views
0

我尝试使用uikit并使用其可排序列表工作。网格系统会以某种方式影响背景高度。身体背景颜色停止在子元素的末端

screenshot

我可以添加这些元素下方的列表和背景绵延下来,但为什么这种组做出这样的背景下的行为?如果我删除这些元素,背景会填满整个屏幕。

body { 
 
    background-color: #787878; 
 
} 
 
#main { 
 
    width: 75%; 
 
    background-color: white; 
 
    margin: 0 auto 
 
}
<link rel="stylesheet" type="text/css" href="css/custom.css"> 
 
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/css/uikit.min.css" /> 
 
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/css/components/sortable.almost-flat.min.css" /> 
 
<nav class="uk-navbar"> 
 
    <ul class="uk-navbar-nav"> 
 
    <li class="uk-active"><a href="">Home</a> 
 
    </li> 
 
    <li><a href="">About</a> 
 
    </li> 
 
    <li class="uk-parent"><a href="">Contact</a> 
 
    </li> 
 
    </ul> 
 
</nav> 
 

 
<br> 
 
<br> 
 

 
<div class="uk-container uk-container-center" data-uk-grid-match> 
 
    <div class="uk-grid uk-grid-width-1-3"> 
 

 
    <div> 
 

 
     <h3>First list</h3> 
 

 
     <div class="uk-sortable uk-margin" data-uk-sortable="{group:'test'}"> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 1</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 2</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 3</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 4</div> 
 
     </div> 
 
     </div> 
 

 
    </div> 
 

 
    <div> 
 

 
     <h3>Second list</h3> 
 

 
     <div class="uk-sortable uk-margin" data-uk-sortable="{group:'test'}"> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 1</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 2</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 3</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 4</div> 
 
     </div> 
 
     </div> 
 

 
    </div> 
 

 
    <div> 
 

 
     <h3>Third list</h3> 
 

 
     <div class="uk-sortable uk-margin" data-uk-sortable="{group:'test'}"> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 1</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 2</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 3</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 4</div> 
 
     </div> 
 
     </div> 
 

 
    </div> 
 
    </div> 
 
</div> 
 

 

 

 

 

 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 

 

 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/uikit.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/core/modal.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/components/sortable.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/components/grid.min.js"></script> 
 
<script src="js/custom.js"></script>

回答

0

您可以添加min-heightpadding-bottombody避免对内容的最终直结束。

最后加载custom.css CSS也可能是明智之举。

body { 
 
    background-color: #787878; 
 
    min-height: 100vh;/* fill up the screen*/ 
 
    padding-bottom:1em;/* make some space at the bottom, a bit of makeup */ 
 
    box-sizing:border-box;/* include the padding into min-height calculation */ 
 
} 
 

 
#main { 
 
    width: 75%; 
 
    background-color: white; 
 
    margin: 0 auto 
 
}
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/css/uikit.min.css" /> 
 
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/css/components/sortable.almost-flat.min.css" /> 
 
<link rel="stylesheet" type="text/css" href="css/custom.css"><!-- might be wise to load custom CSS last --> 
 
<nav class="uk-navbar"> 
 
    <ul class="uk-navbar-nav"> 
 
    <li class="uk-active"><a href="">Home</a> 
 
    </li> 
 
    <li><a href="">About</a> 
 
    </li> 
 
    <li class="uk-parent"><a href="">Contact</a> 
 
    </li> 
 
    </ul> 
 
</nav> 
 

 
<br> 
 
<br> 
 

 
<div class="uk-container uk-container-center" data-uk-grid-match> 
 
    <div class="uk-grid uk-grid-width-1-3"> 
 

 
    <div> 
 

 
     <h3>First list</h3> 
 

 
     <div class="uk-sortable uk-margin" data-uk-sortable="{group:'test'}"> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 1</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 2</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 3</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 4</div> 
 
     </div> 
 
     </div> 
 

 
    </div> 
 

 
    <div> 
 

 
     <h3>Second list</h3> 
 

 
     <div class="uk-sortable uk-margin" data-uk-sortable="{group:'test'}"> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 1</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 2</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 3</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 4</div> 
 
     </div> 
 
     </div> 
 

 
    </div> 
 

 
    <div> 
 

 
     <h3>Third list</h3> 
 

 
     <div class="uk-sortable uk-margin" data-uk-sortable="{group:'test'}"> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 1</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 2</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 3</div> 
 
     </div> 
 
     <div class="uk-margin"> 
 
      <div class="uk-panel uk-panel-box">Item 4</div> 
 
     </div> 
 
     </div> 
 

 
    </div> 
 
    </div> 
 
</div> 
 

 

 

 

 

 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 

 

 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/uikit.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/core/modal.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/components/sortable.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/components/grid.min.js"></script> 
 
<script src="js/custom.js"></script>

+0

也做到了,谢谢!任何想法为什么它是这样的?在其他项目中,背景颜色总是充满屏幕,并且永远不会受到其上的元素的影响。 –

+0

@CarltonBrumbelow如果这样做了,你可以接受这个答案,向大家说明它已经解决,并且可以对其他人有用。 **你已经有了HTML '/ *的背景定义! UIkit 2.27.2 | http://www.getuikit.com | (c)2014 YOOtheme | MIT License */ html {font:400 14px/20px“Helvetica Neue”,Helvetica,Arial,sans-serif; -webkit-text-size-adjust:100%; - ms-text-size-adjust:100%;背景:#fff; color:#444}'这里定义了#fff ** –

+0

完成了,谢谢你的进一步解释! –

0

试试这个,可能是这会帮助你,你需要清除花车有

body { 
 
background-color: #787878; 
 
min-height: 100vh; 
 
} 
 
#main { 
 
    width: 75%; 
 
    background-color: white; 
 
    margin: 0 auto 
 
}
<!DOCTYPE html> 
 
<html> 
 
<head> 
 
<title></title> 
 

 
    <link rel="stylesheet" type="text/css" href="css/custom.css"> 
 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/css/uikit.min.css" /> 
 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/css/components/sortable.almost-flat.min.css" /> 
 

 

 

 
</head> 
 

 
<body> 
 

 
<nav class="uk-navbar"> 
 
    <ul class="uk-navbar-nav"> 
 
     <li class="uk-active"><a href="">Home</a></li> 
 
     <li><a href="">About</a></li> 
 
     <li class="uk-parent"><a href="">Contact</a></li> 
 
    </ul> 
 
</nav> 
 

 
<br><br> 
 

 
<div class="uk-container uk-container-center" data-uk-grid-match> 
 
    <div class="uk-grid uk-grid-width-1-3"> 
 

 
     <div> 
 

 
      <h3>First list</h3> 
 

 
      <div class="uk-sortable uk-margin" data-uk-sortable="{group:'test'}"> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 1</div> 
 
       </div> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 2</div> 
 
       </div> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 3</div> 
 
       </div> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 4</div> 
 
       </div> 
 
      </div> 
 
\t \t \t <div style="clear:both;"></div> 
 

 
     </div> 
 

 
     <div> 
 

 
      <h3>Second list</h3> 
 

 
      <div class="uk-sortable uk-margin" data-uk-sortable="{group:'test'}"> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 1</div> 
 
       </div> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 2</div> 
 
       </div> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 3</div> 
 
       </div> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 4</div> 
 
       </div> 
 
      </div> 
 

 
\t \t \t <div style="clear:both;"></div> 
 
     </div> 
 

 
     <div> 
 

 
      <h3>Third list</h3> 
 

 
      <div class="uk-sortable uk-margin" data-uk-sortable="{group:'test'}"> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 1</div> 
 
       </div> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 2</div> 
 
       </div> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 3</div> 
 
       </div> 
 
       <div class="uk-margin"> 
 
        <div class="uk-panel uk-panel-box">Item 4</div> 
 
       </div> 
 
      </div> 
 

 
\t \t \t <div style="clear:both;"></div> 
 
     </div> 
 
    </div> 
 
</div> 
 

 

 

 

 

 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 

 

 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/uikit.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/core/modal.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/components/sortable.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/uikit/2.27.2/js/components/grid.min.js"></script> 
 
<script src="js/custom.js"></script> 
 
</body> 
 

 
</html>