-2

我担心地使用了这个位置:绝对;在我的模板容器中,以便我放置中心和两侧。

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

我去另一台电脑查看我的网页,但盒子向右移动了?

我说的对吗?

谢谢你

这是我的容器

#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 像素”对我来说是正确的,而对于屏幕较小的其他人来说是正确的。

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

#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

4 回答 4

3

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

编辑以响应更新的问题:

不。不要为此使用绝对定位!你要做的就是在中间有一个 div 。这可以通过像<div id="content"></div>那时这样简单的东西来实现,#content { width: 1000px; margin: 0 auto;并且几乎每个人都会以它为中心,几乎没有标记。

于 2012-11-13T16:51:16.897 回答
3

嗯,不。position:absolute;表示它绝对定位在相对定位的容器中。举个例子:

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

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

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

在您的具体示例中,我认为您正在寻找简单的中心点。实现这一点的最佳方法不是使用position: absolute;,而是将您的内容包装在具有设定宽度的容器中,并应用自动边距,如下所示:

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

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

于 2012-11-13T16:54:39.370 回答
0

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

一旦更改,您在使用绝对定位时对屏幕尺寸所做的任何假设都将被抛弃。

于 2012-11-13T16:53:14.713 回答
0

绝对定位的元素从其最近的定位祖先偏移,即位置设置为“静态”以外的任何元素的祖先元素,或者如果不存在这样的定位祖先,则为文档根元素。

您这样做的原因有很多。居中内容通常不是其中之一,但还有其他方法可以做到这一点。

于 2012-11-13T16:58:30.457 回答