gpt4 book ai didi

html - 将 div 扩展到页面底部(仅限 HTML 和 CSS)

转载 作者:技术小花猫 更新时间:2023-10-29 11:47:10 24 4
gpt4 key购买 nike

这是一个非常简单的问题,但我似乎无法在网上找到合适的解决方案。我想要一个自然流动的元素列表,最后一个元素扩展到页面底部。所以如果我有

<div id="top" style="height:50px;"></div>
<div id="bottom" style="background:lightgrey;"></div>

我需要元素 bottomtop 的底部延伸到页面底部。欢迎任何仅使用 html 和 css 的解决方案,您可以添加容器 div 或任何东西,只要我可以动态调整 bottom div

的大小

编辑:我不想对 bottom 的任何值进行硬编码,因为我希望 bottomtop 调整大小时进行调整

这是满足您所有摆弄需求的 fiddle :http://jsfiddle.net/8QnLA/

最佳答案

解决方案:#1:css 表格:

html, body {
height: 100%;
width: 100%;
}
body {
display: table;
margin: 0;
}
#top, #bottom {
width: 100%;
background: yellow;
display: table-row;
}
#top {
height: 50px;
}
#bottom {
background: lightgrey;
height: 100%;
}

html, body {
height: 100%;
width: 100%;
}
body {
display: table;
margin: 0;
}
#top, #bottom {
width: 100%;
background: yellow;
display: table-row;
}
#top {
height: 50px;
}
#bottom {
background: lightgrey;
height: 100%;
}
<div id="top" style="height:50px;"><span>A header</span></div>
<div id="bottom" style="background:lightgrey;"><span>The content area - extends to the bottom of the page</span></div>

Codepen #1 (little content)

Codepen #2 (lots of content)

解决方案 #2:使用计算和视口(viewport)单位

#top {
height: 50px;
background: yellow;
}
#bottom {
background: lightgrey;
min-height: calc(100vh - 50px);
}

body {
margin: 0;
}
#top {
height: 50px;
background: yellow;
}
#bottom {
background: lightgrey;
min-height: calc(100vh - 50px);
}

Where `min-height: calc(100vh - 50px);` means:

'Let the height of the content div be **at least** 100% of the viewport height minus the 50px height of the header.'
<div id="top" style="height:50px;"><span>A header</span></div>
<div id="bottom" style="background:lightgrey;"><span>The content area - extends to the bottom of the page</span></div>

Codepen #1 (little content)

Codepen #2 (lots of content)

解决方案 #3 - Flexbox

body {
margin: 0;
min-height: 100vh;
}
body {
display: flex;
flex-direction: column;
}
#top {
height: 50px;
background: yellow;
}
#bottom {
background: lightgrey;
flex: 1;
}

body {
margin: 0;
min-height: 100vh;
}
body {
display: flex;
flex-direction: column;
}
#top {
height: 50px;
background: yellow;
}
#bottom {
background: lightgrey;
flex: 1;
}
<div id="top" style="height:50px;"><span>A header</span></div>
<div id="bottom" style="background:lightgrey;"><span>The content area - extends to the bottom of the page</span></div>

Codepen #1 - little content

Codepen #2 - lots of content

关于html - 将 div 扩展到页面底部(仅限 HTML 和 CSS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22934016/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com