CSS绝对定位意味着不使用它吗?

时间:2012-11-13 16:49:22

标签: css

我用担心的位置:绝对;在我的容器中为我的模板,以便我有中心和两侧放置。

然而,正如我所担心的,如果您碰巧希望您的网站被其他人访问,那么请不要使用它。这是因为对于你而言,绝对位置意味着一件事,而对于具有不同尺寸的不同显示器屏幕的其他人来说,另一件事是对的吗?

我去另一台电脑看我的网络,盒子向右移位?

我说的是对的吗?

谢谢

这是我的容器

#container-center{
  width:630px; /*** Set to = center col width ***/
  height:500px;
  float:center;
  font-size:8px;
  display:inline;
  position:absolute;
    left:450px;
    top:80px;

/* \*/
  margin-left:-1px;
/* Hidden from IE-mac */
}



#left_container_home{
  width:150px; /*** Set to = center col width ***/

  height:500px;

  font-size:8px;
  display:inline;
  position:absolute;
    left:250px;
    top:80px;

/* \*/
  margin-left:-1px;
/* Hidden from IE-mac */
}


#right_container{
  width:200px; /*** Set to = center col width ***/

  height:500px;
  float:right;
  font-size:8px;
  display:inline;
  position:absolute;
  left:1085px;
  background:#F3F3F4;
  top:80px;

/* \*/
  margin-left:-1px;
/* Hidden from IE-mac */

}

这种技术是否正确?我的意思是,我做了什么。我说是因为,我不知道怎么说“左450 px”对我来说是正确的,对于屏幕较小的其他人来说也是如此。

我已经像这样修改了标题,它向左漂移了!为什么如果我只是告诉它0自动?

#header {


    background: url("../jq185/css/start/images/ui-bg_gloss-wave_75_2191c0_500x100.png") repeat-x scroll 50% 50% #2191C0;
    font-family: 'trebuchet ms',geneva,arial,tahoma,sans-serif;
    font-size: 10px;
    width: 930px; margin: 0 auto; 
    h2 {color:#ffffff;}



}

4 个答案:

答案 0 :(得分:3)

不,绝对定位有很多用途。 css规范中的所有内容都有它的用处,你永远不应该说“不要使用它”。话虽这么说,定位是绝对的,因此如果你不做正确的话可能会搞砸。您需要在正确的情况下使用正确的工具,并正确使用它们。

编辑以回应更新的问题:

NO。不要使用绝对定位!你要做的就是在中间有一个div。这可以通过<div id="content"></div>然后#content { width: 1000px; margin: 0 auto;这样简单的事情来实现,并且它将以字面上的每个人为中心,只需很少的标记。

答案 1 :(得分:3)

嗯,不。 position:absolute;表示绝对位于相对定位的容器中。请看以下示例:

x { position: absolute; top: 0; left: 0; }

这意味着它将被放置在其父容器的左上角,如果它有position:relative;。但是,如果没有,它将继续向上移动DOM树,直到它找到一个。如果没有,它将被放置在文档的左上角(body)。

在此处阅读有关CSS定位的更多信息:

在您的具体示例中,我认为您希望简单地集中注意力。实现这一目标的最佳方法不是使用position: absolute;,而是将内容包装在具有设置宽度的容器中,并应用自动边距,如下所示:

.wrap { width: 920px; margin: 0 auto; }

这意味着它具有固定的宽度,并且使用两侧的剩余空间作为边距共享。

答案 2 :(得分:0)

无论屏幕大小如何,绝对定位都会将元素定位在所有浏览器的完全相同的屏幕偏移上。但是,在许多情况下,您没有绝对位置的所有内容都将遵循通常的模型,并且会根据屏幕大小而改变。你所看到的是,相对于其他元素,你的绝对定位元素正在移动。

在使用绝对定位时,您对屏幕尺寸所做的任何假设都会在更改后丢弃。

答案 3 :(得分:0)

绝对定位的元素偏离其最近定位的祖先,即祖先元素,其位置设置为“静态”以外的任何值,如果没有这样定位的祖先,则为文档根元素。

为什么要这样做有很多有用的理由。中心内容通常不是其中之一,还有其他方法可以做到这一点。