代码之家  ›  专栏  ›  技术社区  ›  Andrew

带自动溢出功能的DIV中的移位元素

  •  1
  • Andrew  · 技术社区  · 16 年前

    当我尝试使用JavaScript事件更改类时,我的控件在页面布局上发生了变化,我遇到了问题。有人能为解决这个问题提供帮助吗?只有当左滚动条出现时,在IE中才会出现问题。

    下面是HTML的一个示例

    <div id="container" style="overflow:auto;">
      <div id="control1Container" style="left:17%;top:145px;display:inline;position:absolute;">
         <div id="control1" class="listOUT" >I am a control</div>
      </div>
      <div id="control2Container" style="left:67%;top:145px;display:inline;position:absolute;">
         <div id="control2" class="listOUT" >I am a control</div>
      </div><!-- more controls here -->
    </div>
    

    现在假设container div中的控件占用了足够的空间,溢出边界出现在左侧,也就是说控件延伸到container div底部的下方。如果我尝试使用javascript将control1上的listout类更改为说listin,则控件将移到左侧。在我看来,浏览器似乎正在重新调整Control1容器到一个新的位置,如果容器DIV的新宽度和滚动条到位,则该位置为17%。

    有什么想法吗?

    1 回复  |  直到 16 年前
        1
  •  0
  •   Gabriele Petrioli    16 年前

    你需要给集装箱部 position:relative 使其内部的绝对定位元素相对于它定位。