【问题标题】:Cannot center elements in css无法在 css 中居中元素
【发布时间】:2013-02-08 04:54:23
【问题描述】:

我下载了一个模板并对其进行了编辑。现在我想将 one_third 元素居中,但

margin-left: auto;
margin-right: auto;

不起作用。

This 是 jsfiddle 中的模板。

谁能帮帮我?

【问题讨论】:

  • 您是否要使文本居中?还是与页面相关的元素?
  • @invalidsyntax 我没有尝试将文本居中!但我没听懂你的第二句话。
  • 我只是为了帮助理解这个问题。在我的第二句话中,我问您是否希望每个 one_third 元素位于页面(或父容器)的中心。
  • @invalidsyntax 是的,我想要!实际上我希望所有#services 的孩子都位于页面中心。
  • 我相信他们之所以没有居中是因为他们被设置为三分之二。也许如果您只有 2 列,您可能需要考虑将其设置为使用两列而不是三列。

标签: css html margin


【解决方案1】:

要使margin-left:auto;margin-right:auto; 起作用,元素需要具有宽度。所以试试类似的东西:

margin-left: auto;
margin-right: auto;
width: 600px;

更新:

由于您似乎一直在更改您的示例,因此以下是对 displaymargins 工作原理的非常基本的了解:

要让任何盒子在另一个盒子中居中,您需要做两件事:

a) 给外框一个宽度(否则内框不知道要靠什么居中

b) 内框需要有margin: 0 auto(这个和margin-left: auto; margin-right: auto;一样)

另外,两个框都需要是块级元素(即有display: block,而不是display: inline;

所以放在一起会是这样的:

HTML:

<section id="outer">
    <section id="inner"></section>
</section>

CSS:

#outer {
    width: 600px;
    display: block;
    border: 1px solid red;
}
#inner {
    margin-left: auto;
    margin-right: auto;
    width: 200px;
    height: 200px;
    border: 1px solid green;
}

这将为您提供一个 200 像素 x 200 像素的绿色框,中心位于一个宽度为 600 像素的红色框内。

现在,如果您想在绿色框中并排放置两个元素,您可以在其中添加内联元素,即

<section id="outer">
    <section id="inner">
        <article>Hi</article>
        <article>Hi agian!</article>
    </section>
</section>



#outer {
    width: 600px;
    display: block;
    border: 1px solid red;
}
#inner {
    margin-left: auto;
    margin-right: auto;
    width: 200px;
    height: 200px;
    border: 1px solid green;
}
#inner article {
    display: inline;
}

【讨论】:

  • 当然你的例子是行不通的......首先,你给了你的.tc元素display:inline;。内联元素不能居中。其次,您在外部容器上没有宽度。如果外部容器没有宽度,那么将内部的东西居中是没有意义的。看看这个例子看看它的工作原理:jsfiddle.net/2sagZ/14
  • 我想要一行中的元素。我问了here的问题。
  • 无意冒犯,但您可能想退后一步,花一些时间阅读display:blockdisplay:inline 的效果以及它们如何影响元素的定位。您似乎总是在不了解基础知识的情况下将新示例放在一起。要么尝试从给你的例子中学习,要么坚持一个例子并解决它。
猜你喜欢
  • 2021-04-22
  • 1970-01-01
  • 1970-01-01
  • 2014-08-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多