Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 带有3列的粘性页眉/页脚。在列中滚动的div_Css - Fatal编程技术网

Css 带有3列的粘性页眉/页脚。在列中滚动的div

Css 带有3列的粘性页眉/页脚。在列中滚动的div,css,Css,我这里有一把JS小提琴 基本上,我正在尝试制作一个具有粘性页眉和页脚的UI。中间的内容将有三列。每列中都有div。这些div应该有100%的高度,并且不能从页脚上切掉。在DIV中,它们将具有可滚动的DIV 我创建的非常基本的布局中有这个 d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br&

我这里有一把JS小提琴

基本上,我正在尝试制作一个具有粘性页眉和页脚的UI。中间的内容将有三列。每列中都有div。这些div应该有100%的高度,并且不能从页脚上切掉。在DIV中,它们将具有可滚动的DIV

我创建的非常基本的布局中有这个

d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>d<br>this is the end!!

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<结束!!
它说这是结束的部分!!永远无法到达。

注意:请参阅全屏小提琴

您可以尝试使用flexbox而不是定义每个单位,计算高度以避免使用页脚所在的空间,并让子div继承其高度


主体,头{溢出:隐藏;}
#页眉,#页脚,#内容{位置:绝对;右:0;左:0;}
#标题{
高度:100px;顶部:0;背景:#4A4A4A;
}
#页脚{
高度:100px;底部:0;背景:#4A4A4A;
}
#内容{
顶部:100px;
高度:计算(100%-100px);
背景:#fff;
显示器:flex;
对齐项目:拉伸;
}
标题

d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d

d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
结束了!! 中间的 正确的 页脚
注意:请全屏观看小提琴

您可以尝试使用flexbox而不是定义每个单位,计算高度以避免使用页脚所在的空间,并让子div继承其高度


主体,头{溢出:隐藏;}
#页眉,#页脚,#内容{位置:绝对;右:0;左:0;}
#标题{
高度:100px;顶部:0;背景:#4A4A4A;
}
#页脚{
高度:100px;底部:0;背景:#4A4A4A;
}
#内容{
顶部:100px;
高度:计算(100%-100px);
背景:#fff;
显示器:flex;
对齐项目:拉伸;
}
标题

d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d

d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
d
结束了!! 中间的 正确的 页脚
您可以使用flexbox而不需要计算高度

*{
保证金:0;
填充:0;
框大小:边框框;
}
::之前,
::之后{
框大小:继承;
}
身体{
显示器:flex;
弯曲方向:立柱;
高度:100vh;
}
标题{
高度:75px;
背景:红色;
}
主要{
弹性:1;
背景:浅绿色;
显示器:flex;
}
.卷轴{
弹性:1033%;
溢出y:自动;
}
.内容{
高度:1000px;
}
页脚{
高度:50px;
背景:蓝色;
}

您可以使用flexbox而无需计算高度

*{
保证金:0;
填充:0;
框大小:边框框;
}
::之前,
::之后{
框大小:继承;
}
身体{
显示器:flex;
弯曲方向:立柱;
高度:100vh;
}
标题{
高度:75px;
背景:红色;
}
主要{
弹性:1;
背景:浅绿色;
显示器:flex;
}
.卷轴{
弹性:1033%;
溢出y:自动;
}
.内容{
高度:1000px;
}
页脚{
高度:50px;
背景:蓝色;
}


我可以问一下为什么计算高度可能不是最好的吗?我没有说这不是最好的,只是没有必要-Flexbox不需要知道页眉/页脚的高度就可以创建此布局。此外,如果这些值发生变化,CSS不需要更新。也不需要绝对定位,因为绝对定位本质上是不灵活的。我同意,我的解决方案对您的标记很快,但它绝对不是最好的选择,因为您可以使用flexbox来拉伸、对齐和调整flex项,只需几行代码;避免指定太多的高度、宽度等。通过在太多的元素中设置高度和宽度,从长远来看,很难跟踪所有内容,微小的更改可能会造成很大的破坏@DoiDeVo考虑阅读本指南我可以问为什么计算高度可能不是最好的?我没有说它不是最好的,它只是没有必要- Flexbox不需要知道页眉/页脚的高度来创建这个布局。此外,如果这些值发生变化,CSS不需要更新。也不需要绝对定位,因为绝对定位本质上是不灵活的。我同意,我的解决方案对您的标记很快,但它绝对不是最好的选择,因为您可以使用flexbox来拉伸、对齐和调整flex项,只需几行代码;避免指定太多的高度、宽度等。通过在太多的元素中设置高度和宽度,从长远来看,很难跟踪所有内容,微小的更改可能会造成很大的破坏@DoiDeVo考虑阅读本指南