【问题标题】:Bootstrap 3.0.3 affix - content isn't in a fixed place and moves over top of other contentBootstrap 3.0.3 词缀 - 内容不在固定位置并移动到其他内容之上
【发布时间】:2018-09-05 22:03:25
【问题描述】:

我有一个使用 Bootstrap 3.0.3 构建的旧版应用程序。在这种情况下,我们无法更新 Bootstrap。

也就是说,我正在尝试与 3.0.3 一起使用词缀功能。

我在 jsfiddle 上也设置了以下内容:https://jsfiddle.net/x8fc9opm/8/

我想做的是在左侧有一个.col-md-8(红色边框)区域,右侧有一个.col-md-4(蓝色边框)中的项目“库”。

左侧区域可能会变得很长,我希望即使用户向下滚动,蓝色区域也始终可见。

所以我在.col-md-4 中添加了以下内容:

<div class="col-md-4 tag-container" data-spy="affix" data-offset-top="60" data-offset-bottom="200">

当我运行它时,affix 向左移动并与红色区域重叠!

这是为什么?我认为词缀旨在将内容固定到位。

我在这里做错了什么?

【问题讨论】:

    标签: html css twitter-bootstrap twitter-bootstrap-3


    【解决方案1】:

    在您的小提琴中,当打开控制台时,它会给出消息Uncaught Error: Bootstrap requires jQuery。当它被添加到其他脚本之上时,词缀按预期工作。

    还要包装需要保持固定的列。变化:

    <div class="col-md-4 tag-container" data-spy="affix" data-offset-top="60" data-offset-bottom="200">
        ...
    </div>
    

    收件人:

    <div class="col-md-4 tag-container">
      <div data-spy="affix" data-offset-top="60" data-offset-bottom="200">
        ...
      </div>
    </div>
    

    【讨论】:

    • jquery 包括在内。我已经更新了小提琴 (jsfiddle.net/x8fc9opm/7) 以确保这一点——cdn 包含 3 个脚本——jquery、bootstrap.js 和 bootstrap.css。仍然不适合我。
    • 尝试在页面上的其他脚本之前运行 jQuery。
    • jsfiddle.net/x8fc9opm/8。现在正在换边!蓝色区域移到红色上方
    • 这是因为没有样式,无法知道 div 需要定位在哪里。查看我的解决方案:jsfiddle.net/3t45pjuh/6 我将需要滚动的 div 包裹起来,因此父级的位置保持不变。这样,插件就知道滚动时元素的位置。
    • 那么,如果您必须添加类并编写 CSS 来进行定位,那么 Bootstrap 中整个 affix 的意义何在?我想要的只是当用户向下滚动页面时蓝色区域不会移动。你在那里所做的似乎有效,但我不明白词缀在其中的任何作用?它只有在你编写 CSS 来完成你想要的工作时才有效?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-07
    • 2013-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多