在放大和缩小浏览器时,DIV会移动

时间:2012-07-04 15:32:40

标签: css html css3

我有以下div结构

 <div id="wrapper">
     <div id="header">
          <div id="storeFinder">
                        /*  html goes here */
          </div>
     </div> 
 </div>   

现在当我从浏览器放大或缩小时,"storeFinder"向右/向左移动......

我在网上搜索过,发现需要"storeFinder"周围的包装,以便它不会随<body>一起移动,并指定min-width也可以解决问题。

在我的情况下,我已经有一个wrapper div,并指定min-width也可以帮助我。

在这里寻求帮助非常糟糕。

 #wrapper {
            background: white;
            background-position: 50% 0px;
            width: 984px;
            margin: 0px auto 0 auto;
            text-align: center;
        }

    #header {
        width: 960px;
        height: 60px;
        margin: 0 5px 2px 5px;
        text-align: left;
        background: white;
        display: block;
        position: relative;
     }

   #storefinderdropdown {
        position: absolute;
        top: 8px;
        float: none;
        width: 270px;
        height: 43px;
        border: 5px solid #F1F1EF;
        background: #F1F1EF;
        z-index: 10;
        margin: 20px 0 0 342px;
        font-size: 10px;
        font-weight: bold;
        text-indent: 3px;
        padding: 0;
   }

3 个答案:

答案 0 :(得分:3)

尝试在父级上添加position: relative。根据父母而不是根据文件,这将限制孩子的职位是绝对的。本文提供了更多详细信息和示例:http://css-tricks.com/absolute-positioning-inside-relative-positioning/

答案 1 :(得分:1)

试试这个:

#storefinderdropdown {
        position: absolute;
        top: 8px;
    left: 342px; /*Add This*/
        float: none;
        width: 270px;
        height: 43px;
        border: 5px solid #F1F1EF;
        background: #F1F1EF;
        z-index: 10;
        margin: 20px 0 0 0; /* Change This*/
        font-size: 10px;
        font-weight: bold;
        text-indent: 3px;
        padding: 0;
   }​

这可能会对你有所帮助。

答案 2 :(得分:1)

您正确的CSS代码Working Jsfiddle here

#wrapper {
            background: white;
            background-position: 50% 0px;
            width: 984px;
            margin: 0px auto 0 auto;
            text-align: center;
        }

    #header {
        width: 960px;
        height: 60px;
        margin: 0 5px 2px 5px;
        text-align: left;
        background: white;
        display: block;
        position: relative;
     }

   #storeFinder {
        position: absolute;
        top: 8px;
        float: none;
        width: 270px;
        height: 43px;
        border: 5px solid #F1F1EF;
        background: #F1F1EF;
        z-index: 10;
        margin: 20px 0 0 0px;
        left:342px;
        font-size: 10px;
        font-weight: bold;
        text-indent: 3px;
        padding: 0;
   }