gpt4 book ai didi

css - 100% 高度溢出了我的 Flex 布局

转载 作者:行者123 更新时间:2023-12-02 20:55:08 26 4
gpt4 key购买 nike

我用 flexbox 创建了一个有点 chalice 的布局。这完全像没有任何滚动条一样工作 - 直到我将 Quill 文本编辑器插入到我的 content_wrapper 容器中。在这个容器中,有顶部工具栏和内部编辑器的主 div。

当我尝试将编辑器的高度设置为 100% 时,它会产生溢出(我认为是因为它占据了正文的 100%,但没有意识到还有我的自定义 蓝色 工具栏它上面)。

我需要如何设置我的页面,使编辑器不会超出底部页面?

请在完整 View 页面上运行此代码片段!

html,body { 
height:100%;
margin: 0;
padding: 0;
}

.main_wrapper {
background-color: white;
display: flex;
min-height: 100vh;
flex-direction: row;
}

.content_wrapper {
flex: 1;
display: flex;
flex-direction: column;
}

aside.sidebar {
background-color: grey;
flex: 0 0 195px;
}

header.topbar {
background-color: blue;
flex: 0 0 50px;
}

main {
background-color: white;
flex: 1;
}

.contentbar {
background-color: grey;
flex: 0 0 405px;
}
<!doctype html>

<html lang="en">
<head>
<meta charset="utf-8">

<title>Prototype</title>

<link rel="stylesheet" href="style.css">
<!-- Text Editor Theme included stylesheets -->
<link href="https://cdn.quilljs.com/1.1.5/quill.snow.css" rel="stylesheet">

</head>

<body>
<div class="main_wrapper">
<aside class="sidebar"></aside>
<div class="content_wrapper">
<header class="topbar"></header>
<main>
<div id="editor"></div>
</main>
</div>
<div class="contentbar"></div>
</div>
</body>

<!-- Include the Quill library -->
<script src="https://cdn.quilljs.com/1.1.5/quill.js"></script>

<!-- Initialize Quill editor -->
<script>

var options = {
bounds: 'main',
theme: 'snow'
};
var editor = new Quill('#editor', options);
</script>

</html>

最佳答案

使用CSS的calc()函数。

编辑器上方的工具栏占用了一些空间,您应该从 .ql-container 底部减少那么多空间。 .ql-toolbar高度在不同屏幕上可能会有所不同。

喜欢:

.ql-container {
height: calc(100% - 42px); /* 100% - height of 'ql-toolbar' */
}

看看下面的代码片段:

html,body { 
height:100%;
margin: 0;
padding: 0;
}

.main_wrapper {
background-color: white;
display: flex;
min-height: 100vh;
flex-direction: row;
}

.content_wrapper {
flex: 1;
display: flex;
flex-direction: column;
}

aside.sidebar {
background-color: grey;
flex: 0 0 195px;
}

header.topbar {
background-color: blue;
flex: 0 0 50px;
}

main {
background-color: white;
flex: 1;
}

.contentbar {
background-color: grey;
flex: 0 0 405px;
}

.ql-container {
height: calc(100% - 42px);
}
<!doctype html>

<html lang="en">
<head>
<meta charset="utf-8">

<title>Prototype</title>

<link rel="stylesheet" href="style.css">
<!-- Text Editor Theme included stylesheets -->
<link href="https://cdn.quilljs.com/1.1.5/quill.snow.css" rel="stylesheet">

</head>

<body>
<div class="main_wrapper">
<aside class="sidebar"></aside>
<div class="content_wrapper">
<header class="topbar"></header>
<main>
<div id="editor"></div>
</main>
</div>
<div class="contentbar"></div>
</div>
</body>

<!-- Include the Quill library -->
<script src="https://cdn.quilljs.com/1.1.5/quill.js"></script>

<!-- Initialize Quill editor -->
<script>

var options = {
bounds: 'main',
theme: 'snow'
};
var editor = new Quill('#editor', options);
</script>

</html>

希望这有帮助!

关于css - 100% 高度溢出了我的 Flex 布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40674150/

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