html - 使 div 的 50% 不是浏览器宽度
问题描述
我有.left-navbar
和.columns-wrapper
其中是两列,.left-column
并且.right-column
. 第一列和第二列有 50% ,直到.columns-wrapper
我添加position: fixed
并占用浏览器宽度的 50% not 。.right-column
.right-column
.columns-wrapper
.page-wrapper {
width: 100vw;
height: 100%;
display: flex;
background: red;
}
.page-wrapper .left-navbar {
width: 88px;
height: 100%;
background: yellow;
}
.page-wrapper .columns-wrapper {
width: calc(100% - 88px);
height: 100%;
background: orange;
display: flex;
}
.page-wrapper .columns-wrapper .left-column {
width: 50%;
height: 100%;
background: red;
}
.page-wrapper .columns-wrapper .right-column {
width: 50%;
height: 100%;
background: green;
}
<div class="page-wrapper">
<div class="left-navbar">
</div>
<div class="columns-wrapper">
<div class="left-column"></div>
<div class="right-column"></div>
</div>
</div>
解决方案
将columns-wrapper
位置设置为relative
,left-column
并将right-column
位置设置为absolute
。绝对位置与位置值为 的祖先容器有关relative
。
position: fixed
与整个浏览器位置有关,而不是与它的父容器有关。
.page-wrapper .columns-wrapper {
position: relative;
...
}
.page-wrapper .columns-wrapper .left-column {
position: absolute;
...
}
.page-wrapper .columns-wrapper .right-column {
position: absolute;
...
}
推荐阅读
- python - 分别对每一行应用一个函数
- css - 将多层背景与单独的蒙版结合起来
- python-3.x - 使用python检测输入数据的数据类型时,如何使用嵌套的if-else进行这项工作
- math - 如果我在一个网页中有 640 个输入过滤器,我可以拥有的过滤器组合的最大数量是多少?
- bash - 如何防止 Mac OS 上长时间运行的 bash 脚本中的空闲睡眠?
- directx-11 - hlsl 锐化,模糊后处理效果代码问题
- c++ - 为什么来自 MSYS2 的 GNU MP (gmplib) 意外地将 ull 转换为 32 位整数?
- c++ - 我想在 QT 中使用带有事件(返回)的 QComboBox
- python - Tensorflow.keras 的 ImageDataGenerator.flow_from_directory 如何缩放图像值?
- mongodb - MongoDB:两个集合之间的多个 $lookup