html - Css force div 填充它和页脚之间的空间

标签 html css

<分区>

我在 div 中有一个联系表单,它在较小的屏幕分辨率下完美地填充了它与页脚之间的距离,但是当屏幕较大时我遇到了一个问题:联系表单 div 和页脚之间有空白:

view in 24+ inches monitor

这是我的 CSS(帮助我将页脚保持在底部的重要部分):

html,
body {
  padding: 0;
  margin: 0;
  height: 100%;
}

body {
  font: 400 16px/1.4 'Roboto', sans-serif;
  display: flex;
  flex-direction: column;
}

.contact {
  width: 100%;
  clear: both;
  overflow: hidden;
  background: #fff;
  padding: 50px 0;
  margin-top: 50px;
}

.footer {
  background: #313a44;
  border-top: 1px solid #e2e8f0;
  width: 100%;
  flex-shrink: 0;
  padding: 50px 0 25px 0;
}
<div class="header">

</div>
<div class="slider">

</div>
<div class="contact">

</div>
<div class="footer">

</div>

P.S 页脚将具有动态高度

最佳答案

也许 CSS 网格是您的一个选择?

body {
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-rows: minmax(100px, min-content) minmax(200px, min-content) auto minmax(60px, min-content) ;
  grid-template-columns: 1fr;
  min-height: 100vh;
  grid-template-areas:
    "header"
    "slider"
    "content"
    "footer";
}

.header {
  background-color: #e0e0e0;
  grid-area: header;
}

.slider {
  background-color: #e8e8e8;
  grid-area: slider;
}

.contact {
  background-color: orange;
  grid-area: content;
}

.footer {
  background-color: #333;
  color: white;
  grid-area: footer;
}

body > *::before { content: attr(class); }
<div class="header">

</div>
<div class="slider">

</div>
<div class="contact">

</div>
<div class="footer">

</div>

关于html - Css force div 填充它和页脚之间的空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57222789/

上一篇:html - 为什么元素没有在复选框中居中?

下一篇:javascript - 使用 css :hover to display an image on top of another one 时意外的闪烁效果

相关文章:

javascript - 计算Google map 中其他用户视口(viewport)的相对位置

java - 当 CSS 用于列宽时,Vaadin 8 Grid 滚动条的行为不稳定

image - 如何仅使用 CSS3 更改图像颜色(图像有灰色阴影)?

css - float 元素超出其父元素?

javascript - 消失的转变

html - 避免带有 float 元素网格的空白空间

css - 尝试仅使用 div 和 css 而不是表格来实现格式化

html - 如何确保图标与文本在同一行,而不是换行?

css - drupal_add_css 不工作

android - Div 在 Android 上居中对齐但在 iPhone 上不居中