【问题标题】:Centering Three Div Tags Inside Of A Div将三个 div 标签居中在一个 div 内
【发布时间】:2026-02-11 03:35:01
【问题描述】:

我有一个容器 div,想在中心 div 中放置三个 div 标签,我的 XHTML 是正确的,但我遇到的问题是,在 div 中将三个 div 居中。

我现在将显示代码。

XHTML 1.0 过渡 (HTML)

<div id="container">  
<div id="header">
</div>
<div id="content">
  <div id="contentbox">
  </div>
    <div id="contentbox">
  </div>
    <div id="contentbox">
  </div>
</div> 
</div>

层叠样式表 (CSS)

#container {
  width: 900px;
  height: inherit;
  margin: 30px auto;
}

#content {
  float: center;
  width: inherit;
  height: inherit;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
}

#header {
  margin: 0 auto;
  background-image: url(images/logo.png);
  background-position: center;
  width: 250px;
  height: 250px;
}

#contentbox {
  margin-left: auto;
  margin-right: auto;
  float: left;
  display: block;
  width: 250px;
  height: 250px;
  background-image: url(images/contentbox.png);
}

要查看我正在尝试做的示例,请访问http://www.noxinnovations.com/portfolio/hfc/

我想知道如何在内容 div 中将这三个内容框居中。

非常感谢, 亚伦布鲁尔

【问题讨论】:

  • ID 应该是唯一的,并且不存在 float: center;
  • 你应该使用类来引用通用名称而不是 ids!
  • 你的例子是404。请修正。

标签: css xhtml layout html centering


【解决方案1】:

嘿, float: center; 不起作用。 float property 没有这样的值。

用这个代替#content css

text-align: center;

希望有帮助。

【讨论】:

    【解决方案2】:

    检查这是不是你想要的:

    http://jsfiddle.net/65WHf/1/

    请注意,ID 应该是唯一的,并且没有中心浮动之类的东西。要使 div 居中,您必须确保它相对于它的容器定位(这是我所知道的大多数浏览器的默认行为)并使用以下语法:

    .something {
      margin: 0 auto;
      clear: both; // instead of float
    }
    

    【讨论】:

    • 我也试过了,但它无法识别内容框#h1 样式并应用它们。不过谢谢。
    • 我们不会为你建立你的页面 - 哈哈。您可以应用后续样式等。尤达的建议/jsfiddle 示例应该可以满足您的需求。其他一切都不是你的问题。
    • 尤达,这就是我想要的。但是,我遇到的问题是将它们并排排列在#content div 中。 True North Creative,感谢您的帮助,并对您的反馈持开放态度...但是,我并不是要求您为我建立我的页面,而是提出这个问题,因此我不仅可以解决问题,而且可以了解更多信息。我是一个网页设计师是初学者阶段大声笑。
    • @Aaron Brewer,你能做一个图形方案吗?
    • 只需在#container 中创建第二个容器,然后使用我提到的代码(在您创建的第二个容器中)将 .contentbox 放入其中。我假设您所有的 .contentbox 最多始终与组的宽度相同,或者与个人的宽度相同。
    【解决方案3】:

    你总是可以这样做:

    HTML:

    <div id="container">  
        <div id="header"></div>
        <div id="content">
            <div class="contentbox"></div>
            <div class="contentbox"></div>
            <div class="contentbox"></div>
        </div> 
    </div>
    

    CSS:

    .contentbox {
          margin-left: auto;
          margin-right: auto;
          float: left;
          display: block;
          width: 250px;
          height: 250px;
          border: 1px dashed #999;  /* just for visuals */
          margin: 0 10px;  /* just for visuals */
    }
    

    作为一般做法,您肯定希望远离 ID,是否可以将它们与 javascript(jquery 等)库一起使用。而且这样更干净。

    【讨论】:

    • 我也试过这个,但也没有用。相反,它将三个内容框推到内容 div 的左上角,并且没有应用 CSS 文件中注明的 #h1 样式。不过谢谢。
    最近更新 更多