gpt4 book ai didi

jquery - 位置 :fixed element inside fixed size div

转载 作者:行者123 更新时间:2023-11-28 06:52:59 28 4
gpt4 key购买 nike

我花了几个小时寻找这个问题的答案,但其他人提供解决方案的场景似乎比我的稍微简单一些。

有没有办法在固定大小的 div 中放置一个 position:fixed 元素,而该元素不会溢出 div?

换句话说,如果固定元素增长,我希望滚动条出现在 div 中(水平和垂直),但我需要元素在垂直滚动时保持固定(我计划使用 JQuery 来做到这一点)。

提前致谢。

<style> 
.container {
width:200px;
height:200px;
border:solid 1px black;
overflow:scroll;
}
.fixed-element {
position: fixed;
width:250px;
height:100px;
background-color:red;
top:10px;
}
p {
min-width: 300px;
}
</style>
<body>
<div class="container">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
</p>
<div class="fixed-element">
</div>
</div>
</body>

编辑:我正在寻找的整体效果就像这里的中间框:http://demo.rickyh.co.uk/css-position-x-and-position-y/除了应用于可滚动的 div 而不是整个视口(viewport)。

最佳答案

所以我想出的办法解决了你的问题,但是当你想滚动时,当你的鼠标悬停在固定框(红色框)上时,你无法滚动。

不太确定这有多重要。

我添加了另一个元素,一个 .holder 并使用 position: absolute; 定位了你的 fixed 元素,因为你只希望它在里面你的 .container

.container {
position: relative;
width:200px;
height:200px;
border:solid 1px black;
overflow: hidden;
}
.fixed {
position: absolute;
width: 250px;
height: 100px;
max-width: 175px;
background-color: rgba(255,0,0,0.5);
top: 10px;
left: 10px;
}
.holder {
width: inherit;
height: inherit;
overflow:scroll;
}
p {
min-width: 300px;
}
<div class="container">
<div class="fixed">
This is "fixed"
</div>
<div class="holder">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
</p>
</div>
</div>


编辑

对于红框与滚动条重叠的问题,我只能想到如下:

max-width 添加到您的 .fixed。我也在代码段中更改了它。

如果您想找出确切的滚动条宽度,因为浏览器之间的宽度不同,您需要使用 Javascript。您可以查看 here on stackover 的答案或 davidwalsch-blog

关于jquery - 位置 :fixed element inside fixed size div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33674009/

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