使用transform时固定元素的问题:在父级上翻译

时间:2015-01-19 09:43:27

标签: javascript jquery html css

我的翻译父母的固定元素有一个奇怪的问题,我会尽量解释它。

我的JsFiddle在这里http://jsfiddle.net/94qaueuL/1/

基本上,当页面滚动到第二个<section>时,我有一个绿色标题。我在整个#site-wrap下面也有一些奇特的内容。如果您点击<section>,则会将transform:translate(-50%, 0)放入#site-wrap

问题是,当翻译#site-wrap时,标题会变得混乱。它不再跟随position:fixed

任何想法如何解决这个问题?

我希望我在这里有意义......

编辑 - 哦,滚动时应该出现的标题脚本事件甚至不重要。当我翻译父母时,它仍然会混乱。

2 个答案:

答案 0 :(得分:1)

问题是由于您正在使用转换而引起的。

查看有关The Transform Rendering Model

的规范
  

为'transform'属性指定'none'以外的值   在元素处建立一个新的局部坐标系   适用于。

因此具有固定定位的元素将变为相对于具有变换的元素 - 而不是视口

要解决此问题,我建议使用左/右定位而不是变换。

答案 1 :(得分:0)

在您的示例中,您只需将#header放在#site-wrap。

之外