Html 为什么删除属性时页脚元素的位置错误";位置:相对“;它的父包装器元素的

Html 为什么删除属性时页脚元素的位置错误";位置:相对“;它的父包装器元素的,html,css,Html,Css,我试图创建一个底部总是有页脚元素的html页面,我遵循了这一点,一切都很完美 但是我发现,如果我从CSS类“wrapper”中删除属性“position:relative”,则页脚的位置将错误,如下图所示 因为我不太熟悉CSS,我想知道为什么在这种情况下需要“position:relative” CSS: html, 身体{ 保证金:0; 填充:0; 身高:100%; } #包装纸{ 最小高度:100%; 位置:相对位置; } #标题{ 背景:#ededed; 填充:10px; } #内容{

我试图创建一个底部总是有页脚元素的html页面,我遵循了这一点,一切都很完美

但是我发现,如果我从CSS类“wrapper”中删除属性“position:relative”,则页脚的位置将错误,如下图所示

因为我不太熟悉CSS,我想知道为什么在这种情况下需要“position:relative”

CSS:

html,
身体{
保证金:0;
填充:0;
身高:100%;
}
#包装纸{
最小高度:100%;
位置:相对位置;
}
#标题{
背景:#ededed;
填充:10px;
}
#内容{
填充底部:100px;/*页脚元素的高度*/
}
#页脚{
背景#ffab62;
宽度:100%;
高度:100px;
位置:绝对位置;
底部:0;
左:0;
}

对于(var i=0;i

因为
#footer
的属性
position
绝对的


这意味着,它将具有相对于第一个父对象的绝对位置,该父对象将具有相对位置(在本例中为


如果没有父对象具有此属性,那么它对于
body

“具有相对位置的第一个父对象”将是绝对的,非常感谢!更准确地说,我认为它将是“具有定位属性的第一个父对象(静态除外)”。请参见。因此,位置“绝对”和“固定”也将起作用,尽管“相对”这是一个更合理的答案。