css - 如何在中心制作固定位置的div
问题描述
我有两个 50% 宽度的 div,并希望将一个 div(在其中一个内部)设置为固定位置和居中。
我创建了一个codepen。请查看它以更好地了解问题。我也在这里嵌入了我的代码。
<div class="parent">
<div class="first">
<p>...</p>
</div>
<div class="second">
<p>...</p>
<div class="floating"></div>
</div>
</div>
.parent {
display: flex;
width: 100%
}
p {
color: #fff;
padding: 20px;
}
.first {
width: 50%;
height: 100vh;
background-color: #000;
}
.second {
width: 50%;
height: 100vh;
background-color: #ddd;
}
.floating {
width: 100px;
height: 100px;
background-color: #fff;
position: fixed;
}
PS我知道它可能与位置粘性但我不想使用它。您可以在类中添加以下代码,.floating
它将位于中心。
position: sticky;
margin: 0 auto;
解决方案
设置相对于第二个元素的位置,然后将框设置在中心位置,绝对位置如下:
.second {
position: relative;
width: 50%;
height: 100vh;
background-color: #ddd;
}
.floating {
width: 100px;
height: 100px;
background-color: #fff;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%)
}
推荐阅读
- firebase - Unity FireBase 实时数据库获取特定密钥的所有子项
- ffmpeg - 有没有办法对由语言管理的多个音频和子流进行编码
- c# - 如何等待下一个串口数据与收集的字节一起附加?
- snowflake-cloud-data-platform - 如果无法触发多个 SQL 语句,如何使用 Snowflake 作为 ETL / ELT 选项?
- python - 如何将 obj 文件加载到 PyOpenGL
- javascript - 在谷歌脚本上使用 forEach 的问题
- javascript - 保存我的 chrome 扩展的 textarea 值所需的 Javascript 或 HTML DOM 函数
- visual-studio - VS2017 中没有 Azure 功能的发布设置选项
- java - 使用 Java 中的 MongoDB 在 upsert 上创建新文档时“inc”的默认值?
- python - 无法使用while循环理解幂运算