Html 页眉和页脚之间的填充DIV,但不能超过

Html 页眉和页脚之间的填充DIV,但不能超过,html,css,Html,Css,我怎么能有一个页眉和页脚,中间有一个MainContent div,它填充了所有可用的区域,但从不延伸到页脚或页眉之外 换句话说,在页眉和页脚之间填充剩余的空间,但永远不要使用更多的空间 我想不出我怎么能做到这一点。我尝试了很多次,但都没有成功,因为中间的content div总是溢出页脚顶部,这是我不希望发生的。我希望内容div只延伸到页脚的顶部,就这样 我试过设置溢出:隐藏;但这只是阻止了滚动条的出现,没有别的 不允许使用Javascript。如果绝对定位页眉和页脚,则应该能够将内容div

我怎么能有一个页眉和页脚,中间有一个MainContent div,它填充了所有可用的区域,但从不延伸到页脚或页眉之外

换句话说,在页眉和页脚之间填充剩余的空间,但永远不要使用更多的空间

我想不出我怎么能做到这一点。我尝试了很多次,但都没有成功,因为中间的content div总是溢出页脚顶部,这是我不希望发生的。我希望内容div只延伸到页脚的顶部,就这样

我试过设置溢出:隐藏;但这只是阻止了滚动条的出现,没有别的


不允许使用Javascript。

如果绝对定位页眉和页脚,则应该能够将内容div的高度和宽度设置为100%。确保将内容div的位置设置为相对。

如果绝对定位页眉和页脚,则应该能够将内容div的高度和宽度设置为100%。确保将内容div的位置设置为相对。

页眉和页脚是否始终应位于屏幕的该位置

如果是,则可以使用css的属性。这样,您可以将页眉和页脚锚定到窗口屏幕

如果它们被主div覆盖,则在其上和主内容div上抛出一个z索引(确保主内容具有position属性和一个小于页眉和页脚的z索引)


一旦你这样做了,你可以在你的主要内容div上加上边距,以确保它位于页眉/页脚之间。页眉和页脚是否总是应该在屏幕的那个位置

如果是,则可以使用css的属性。这样,您可以将页眉和页脚锚定到窗口屏幕

如果它们被主div覆盖,则在其上和主内容div上抛出一个z索引(确保主内容具有position属性和一个小于页眉和页脚的z索引)


一旦这样做,您可以在主内容div上添加边距,以确保它位于页眉/页脚之间。有几种可能的方法:

  • 将页眉和页脚设置为绝对值,然后将主体高度设置为100%
  • 如果您想用颜色或图像填充除页眉和页脚之外的整个页面,只需将正文
    背景颜色
    背景图像
    更改为您喜欢的任何颜色,即可完成操作
  • 将内容设置为100%,并放置页眉和页脚
    top:0
    bottom:0
  • 使页眉和页脚<代码>位置:固定,但这样您的页眉和页脚将位于正文前面

  • 我会采用第二种方法,因为我无法想象需要在页眉和页脚之间精确匹配内容的情况。

    有几种可能的方法:

  • 将页眉和页脚设置为绝对值,然后将主体高度设置为100%
  • 如果您想用颜色或图像填充除页眉和页脚之外的整个页面,只需将正文
    背景颜色
    背景图像
    更改为您喜欢的任何颜色,即可完成操作
  • 将内容设置为100%,并放置页眉和页脚
    top:0
    bottom:0
  • 使页眉和页脚<代码>位置:固定,但这样您的页眉和页脚将位于正文前面

  • 我会采用第二种方法,因为我无法想象需要在页眉和页脚之间精确匹配内容的情况。

    基本上,您可以将“底部”属性设置为页脚的高度,并将“溢出”属性设置为“自动”,以便在必要时添加滚动条,以防止其溢出

    e、 g

    #内容{
    位置:绝对位置;
    顶部:px;
    底部:px;
    溢出:自动;
    }
    
    下面是一个演示:

    基本上,您可以将“底部”属性设置为页脚的高度,并将“溢出”属性设置为“自动”,以便在必要时添加滚动条,以防止其溢出

    e、 g

    #内容{
    位置:绝对位置;
    顶部:px;
    底部:px;
    溢出:自动;
    }
    
    下面是一个演示:

    为什么CSS不能向微软的XAML学习?我们应该能够有水平对齐:左;水平对齐:拉伸;或垂直排列:对;那太好了。谢谢大家的帮助。:-)为什么CSS不能从微软的XAML学习?我们应该能够有水平对齐:左;水平对齐:拉伸;或垂直排列:对;那太好了。谢谢大家的帮助。:-)在我试过其他小提琴之后,它们并没有像它们想象的那样工作,但是我检查了你的小提琴,它工作得非常好。只有在必要的时候,我才能接受滚动条。我非常喜欢这种方法。谢谢:)您也可以将其设置为溢出:隐藏。。。但是如果内容低于content div的高度,就很难将其视为一个用户。在我尝试了其他内容之后,它们并没有像预期的那样工作,但我检查了你的小提琴,它工作得非常好。只有在必要的时候,我才能接受滚动条。我非常喜欢这种方法。谢谢:)您也可以将其设置为溢出:隐藏。。。但是,如果内容低于contentdiv的高度,就很难将其视为用户。
    #content {
       position: absolute;
       top: <height of header>px;
       bottom: <height of footer>px;
       overflow: auto;
    }