position: absolute;display: block;width: 80%;margin:0 auto;
为什么改成这样就可以了?第一种为什么不行?
position: absolute;display: block;width: 80%;margin:auto;right:0;left:0;
position: absolute;display: block;width: 80%;margin:0 auto;
为什么改成这样就可以了?第一种为什么不行?
position: absolute;display: block;width: 80%;margin:auto;right:0;left:0;
2 回答1.3k 阅读✓ 已解决
2 回答792 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
1 回答747 阅读✓ 已解决
2 回答1.2k 阅读
2 回答728 阅读
1 回答677 阅读✓ 已解决
第一种不行,因为你设置了
但top,bottom,left,right都没有指定,则left,top值与原文档流位置一致。即跟当它static时的位置一样,但是不占位。这个时候
这行代码其实的不起作用的。
第二种可以,因为你指定了left和right为0,把元素充满了容器,同时自身指定了宽度,总宽度计算方式:
margin-left 以及 margin-right 值为 auto 的设为0,所以总宽度(固定) = width(固定) + margin-left + margin-right;(宽度为80%),到这一步,你就可以把
这代码无视了,它的作用其实可以理解为确定其元素的总宽度,
当margin设置为auto的时候,左右边距会平分,元素自然就居中了,垂直居中原理一致。