这两个边距有啥区别? [复制]

Posted

技术标签:

【中文标题】这两个边距有啥区别? [复制]【英文标题】:What is the difference between this 2 margins? [duplicate]这两个边距有什么区别? [复制] 【发布时间】:2013-12-17 15:15:22 【问题描述】:

我正在为大学做的作业是制作一个网站。 所以我有一个名为 container 的 div id,它是我的 div,它将定义我所有页面的宽度。 所以我的问题是老师说放

#container 
    width:Anyvaluepx;
     margin:auto;


所以我一直在寻找使容器居中的方法,我看到人们说要放这样的东西:

#container 
  width:valuepx;
   margin 0 auto;


我认为我的 html 文件不是必需的,但我也会发布:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Eagle's Guitar Shop</title>
<link rel="stylesheet" type="text/css" href="css/styles.css" />
</head>

<body>
<div id="container">
<div id="header">
</div>
<div id="nav">
</div>
<div id="content">
</div>
<div id="footer">
 </div>






</div> <!--Finish Container div-->
</body>
</html>

所以我的问题很简单 use margin:auto; 之间有什么区别?和边距:0 自动;?

感谢所有问题,所以边距适用于使用屏幕分辨率重新调整网站大小,对吗?所以最好让所有自动?还是 0 自动;?

感谢您的宝贵时间。

【问题讨论】:

【参考方案1】:

两者都会让你的 div 水平居中。添加 0 确保顶部和底部边距为零。它不必与对齐中心做任何事情。更多infi参考以下帖子。

What does auto do in margin:0 auto?

【讨论】:

【参考方案2】:

margin: 0 auto居中 容器的正确方法。不同之处在于margin: auto 混淆了垂直轴和水平轴,而后者侧重于水平轴。

【讨论】:

【参考方案3】:

区别在于margin: auto;将所有边距设置为auto;而margin: 0 automargin-topmargin-bottom 都设置为0margin-leftmargin-right 都设置为auto

margin: auto;

相当于:

margin-top: auto;
margin-right: auto;
margin-bottom: auto;
margin-left: auto;

margin: 0 auto;

相当于:

margin-top: 0;
margin-right: auto;
margin-bottom: 0;
margin-left: auto;

同样,

margin: 0 auto 10px;

相当于:

margin-top: 0;
margin-right: auto;
margin-bottom: 10px;
margin-left: auto;

参考资料:

CSS Properties: margin

【讨论】:

嗯所以我的老师错了?所以正确的方法是总是使用 margin:0 auto;?谢谢。 不,上边距和下边距可以auto,对于没有绝对定位的框,它们只会默认为零。 @Carlo:同意,只是删除了那个断言(经过片刻的思考)。

以上是关于这两个边距有啥区别? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

html中margin外边距和padding内边距有啥用? 一般在啥情下使用?只对块级标签都有用还是只对div?

默认的 `<body>` 边距有多宽?

margin塌陷问题及解决

在 iOS 上,边距、边缘插入、内容插入、对齐矩形、布局边距、锚点......有啥区别?

Android边距开始/结束和右/左有啥区别?

Android以编程方式设置在xml文件中声明的按钮边距? [复制]