【问题标题】:CSS inheritance with position:fixed used for scrolling DIVSCSS 继承与 position:fixed 用于滚动 DIVS
【发布时间】:2011-02-11 03:12:58
【问题描述】:
我有一个 DIV,其内容比外部 DIV 多。目前我正在使用溢出:自动;创建滚动条。但是,我希望滚动条位于浏览器级别而不是 DIV 一侧。
我尝试将所有其他 DIVS 设置为 position:fixed 但是当我将包含的 DIV 设置为 position:fixed 时,我想要滚动的 DIV 继承了此属性,从而冻结了整个页面。如果不将 position:fixed 放在容器 DIV 上,它也会滚动。
有没有办法阻止这种继承,所以唯一可以滚动的元素是固定的?
我的网站:http://www.longmeadoweventcenter.com/dev/reservations/
【问题讨论】:
标签:
css
inheritance
scroll
positioning
【解决方案1】:
如果我正确理解您的问题,除非可滚动内容充当页面背景,否则这是不可行的。
你有你的意图的绘制模型吗?
【解决方案2】:
您所问的并不是真正“完成”的做事方式。你问的方式肯定是不可能的。
一个明显的问题是如果页面的其余部分对于屏幕来说太大了,需要滚动条怎么办?
也许可以达到您想要的效果,但代价是完全重新设计您的页面结构,并严重限制您可以对页面的其余部分执行的操作。
最接近此的方法是完全更改页面布局,使可滚动区域成为主要页面元素,使用普通的position:static 或position:relative。在没有任何其他内容的情况下,这就像一个普通页面,但需要在所有方面都有很大的边距。然后,您的页面内容的其余部分将使用z-index 和position:fixed; 定位在其顶部。这需要采用至少四个独立的<div> 元素的形式,有效地充当主要内容的框架。您可以将任何您喜欢的内容放入这些框架元素中,但显然与您描述的布局不同,您不能让内容在可滚动区域后面流动,也不能在四个 div 之间流动。
所以效果是可能的,但并不容易,而且可能不像你想象的那样。