gpt4 book ai didi

css - 绝对位置垂直集中的问题

转载 作者:行者123 更新时间:2023-11-28 02:36:02 26 4
gpt4 key购买 nike

我正在尝试集中一个容器。此容器有一个内部容器,内部容器又包含页眉、内容和页脚。

我想要实现的是,父容器的高度必须与其内容相符,但要遵守限制,设置最大高度。

我尝试了两种不同的方法,但都不能完全工作,我创建了一个 fiddle来说明我的观点。

如果你一步一步删除内容,你会发现尽管我只设置了最大高度,容器并没有变低,它的行为就像设置了高度一样。

如果将容器的类更改为“container-2”,您会看到尽管随着内容被删除它变得越来越低,但当内容变得比父容器大时,内部容器继续拉伸(stretch),就好像没有overflow:auto 设置在“内容”框中。

内容框设置了editablecontent属性,方便测试

<!DOCTYPE html>
<head>
<style>
/** just setting some colors **/
body
{
background: red;
}

.container
{
background: white;
}

section
{
background: silver;
}

header, footer
{
background: #ffff0050;
}
/** just setting some colors **/

.container
{
position: absolute;
top: 0; right: 0; bottom: 0; left: 0;

margin: auto;

width: 800px;
max-height: 80vh;
}

.container-2
{
position: absolute;
top: 50%; left: 50%;

width: 800px;
max-height: 80vh;

overflow: hidden;

-webkit-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}

section
{
height: 100%;
}

header, footer, .content
{
padding: 20px;
}

.content
{
overflow-y: auto;
height: calc(100% - 160px);
}

header, footer
{
height: 20px;
overflow: hidden;
}
</style>
</head>
<body>
<div class='container'>
<section>
<header>
header
</header>
<div class='content' contenteditable=true>
Lorem ipsum dolor sit amet, nec latine aperiam expetendis ne, eum at numquam interesset, in nec veri posidonium. Id solum aliquip ius. In vix eros debet adolescens, ea pro brute dolores. No ridens vituperata mei. Mei in duis discere ocurreret, autem evertitur signiferumque ut vim. Ne vim erant denique, posse consectetuer qui ut.
Eos labores pertinax eu, tamquam gloriatur an vim. Et lorem delenit has. Pro lorem latine cu, eu sit omnis scripserit. Mel an case prima, nec petentium adversarium et, per eirmod consequuntur ad.
At minimum propriae eum, cu assueverit necessitatibus ius. Facer omnium facilisis pri id. Has porro harum id, ne ius ferri aeterno. Zril offendit argumentum ad duo. Ei vel atqui nostro. Ei vim aeque complectitur, id per solet eligendi. Doming efficiantur et ius, usu in tempor denique, sed nisl saepe iisque in.
Id viderer sensibus corrumpit quo, mea at corpora repudiare reprimique, vix cu indoctum volutpat assueverit. Nominavi scaevola gloriatur ius no, vis ex laudem viderer. Qui utroque maluisset euripidis no. Te regione omnesque vix, debitis sententiae theophrastus vel ad, verear commune incorrupte ad cum. Ei his erant appareat, eum in omnes dolorem sapientem. Te nec doctus volumus abhorreant. Te debitis dolorem democritum mel, duo prodesset abhorreant ne, offendit gubergren eu mei.
Mel eu solum ancillae torquatos. Et vim doming animal reprimique. Ex per iusto posidonium, et per movet eleifend. Per in quas erant scribentur. Vim veritus eligendi ad, vis stet neglegentur te.
Lorem ipsum dolor sit amet, nec latine aperiam expetendis ne, eum at numquam interesset, in nec veri posidonium. Id solum aliquip ius. In vix eros debet adolescens, ea pro brute dolores. No ridens vituperata mei. Mei in duis discere ocurreret, autem evertitur signiferumque ut vim. Ne vim erant denique, posse consectetuer qui ut.
Eos labores pertinax eu, tamquam gloriatur an vim. Et lorem delenit has. Pro lorem latine cu, eu sit omnis scripserit. Mel an case prima, nec petentium adversarium et, per eirmod consequuntur ad.
At minimum propriae eum, cu assueverit necessitatibus ius. Facer omnium facilisis pri id. Has porro harum id, ne ius ferri aeterno. Zril offendit argumentum ad duo. Ei vel atqui nostro. Ei vim aeque complectitur, id per solet eligendi. Doming efficiantur et ius, usu in tempor denique, sed nisl saepe iisque in.
Id viderer sensibus corrumpit quo, mea at corpora repudiare reprimique, vix cu indoctum volutpat assueverit. Nominavi scaevola gloriatur ius no, vis ex laudem viderer. Qui utroque maluisset euripidis no. Te regione omnesque vix, debitis sententiae theophrastus vel ad, verear commune incorrupte ad cum. Ei his erant appareat, eum in omnes dolorem sapientem. Te nec doctus volumus abhorreant. Te debitis dolorem democritum mel, duo prodesset abhorreant ne, offendit gubergren eu mei.
Mel eu solum ancillae torquatos. Et vim doming animal reprimique. Ex per iusto posidonium, et per movet eleifend. Per in quas erant scribentur. Vim veritus eligendi ad, vis stet neglegentur te.
Lorem ipsum dolor sit amet, nec latine aperiam expetendis ne, eum at numquam interesset, in nec veri posidonium. Id solum aliquip ius. In vix eros debet adolescens, ea pro brute dolores. No ridens vituperata mei. Mei in duis discere ocurreret, autem evertitur signiferumque ut vim. Ne vim erant denique, posse consectetuer qui ut.
Eos labores pertinax eu, tamquam gloriatur an vim. Et lorem delenit has. Pro lorem latine cu, eu sit omnis scripserit. Mel an case prima, nec petentium adversarium et, per eirmod consequuntur ad.
At minimum propriae eum, cu assueverit necessitatibus ius. Facer omnium facilisis pri id. Has porro harum id, ne ius ferri aeterno. Zril offendit argumentum ad duo. Ei vel atqui nostro. Ei vim aeque complectitur, id per solet eligendi. Doming efficiantur et ius, usu in tempor denique, sed nisl saepe iisque in.
</div>
<footer>
footer
</footer>
</section>
</div>
</body>

您知道让这两者协同工作的方法吗?

最佳答案

使用 .container-2 然后需要替换这个 -

.content {
溢出-y:自动;
高度:计算(100% - 160px);
}

有了这个

.content {
溢出-y:自动;
最大高度:计算(80vh - 160px);
}

关于css - 绝对位置垂直集中的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47414041/

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