美文网首页前端
(转)margin 实现水平居中,垂直居中原理

(转)margin 实现水平居中,垂直居中原理

作者: agamgn | 来源:发表于2020-07-18 11:13 被阅读0次

原文地址:margin 实现水平居中,垂直居中原理

首先了解下,margin的auto属性的作用是用来分配剩余空间,所以对于有剩余空间的元素才有效哦(块及元素)。
比如图片设置margin: 0 auto是无效的,因为图片是内联元素,不是占一整行,没有剩余空间。

1、块及元素水平方向居中

原理:两侧auto,则平分剩余空间,相当于水平居中。


<div class="out-box">
  <div class="div1">    
  </div>
</div>
 
.out-box{
  background-color: black;
}
 
.div1 { 
  margin: 0 auto; 
  width:200px;  
  height: 200px;
  background-color: red;
}
image.png

2、块及元素水平居右

原理:一侧auto,一侧没设置,则设置auto的一侧分配所有剩余空。

div {
 width:200px; 
height: 200px; 
margin-left: auto;
}
image.png

3、实现垂直方向的居中可以用绝对定位

div  {
                background: #FF0000;
                width: 200px;
                height: 200px;
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                margin: auto;
            }

margin: auto; 是关键,没有设置此项,也不会水平垂直居中哦。

image.png

解释下原理:

1.在普通内容流中,margin:auto的效果等同于margin-top:0;margin-bottom:0。

2.position:absolute使绝对定位块跳出了内容流,内容流中的其余部分渲染时绝对定位部分不进行渲染。

3.为块区域设置top: 0; left: 0; bottom: 0; right: 0;将给浏览器重新分配一个边界框,此时该块块将填充其父元素的所有可用空间,所以margin 垂直方向上有了可分配的空间。

4.再设置margin 垂直方向上下为auto,即可实现垂直居中。(注意高度得设置)。

相关文章

  • (转)margin 实现水平居中,垂直居中原理

    原文地址:margin 实现水平居中,垂直居中原理 首先了解下,margin的auto属性的作用是用来分配剩余空间...

  • margin负值应用实例

    1. 水平垂直居中 利用margin负值可以实现元素的水平垂直居中 html代码: CSS代码 实现效果 2. 列...

  • html,css篇

    一.水平垂直居中 1.水平居中 ①margin:0 auto; 2.垂直居中 ①li...

  • 实现Div水平垂直居中

    水平垂直居中问题,在css中margin: 0 auto;可以实现水平居中,但是在垂直居中方面一直没有特定的属性,...

  • 如何居中div?

    水平垂直居中问题,在css中margin: 0 auto;可以实现水平居中,但是在垂直居中方面一直没有特定的属性,...

  • 如何让元素居中

    水平垂直居中问题,在css中margin: 0 auto;可以实现水平居中,但是在垂直居中方面一直没有特定的属性,...

  • CSS(五)对齐方式(居中)

    一、水平居中 margin: auto;设置子容器margin属性,可使元素在父容器内水平居中 二、垂直居中 li...

  • 动态设置div css属性

    jQuery实现水平和垂直居中 jQuery实现水平和垂直居中的原理就是通过jQuery设置DIV的CSS,获取D...

  • CSS居中的几种方式

    1.水平居中的 margin:0 auto; 2.水平居中 text-align:center; 3.水平垂直居中...

  • css div垂直居中

    方案一:div绝对定位水平垂直居中【margin:auto实现绝对定位元素的居中】, 方案二:div绝对定位水平垂...

网友评论

    本文标题:(转)margin 实现水平居中,垂直居中原理

    本文链接:https://www.haomeiwen.com/subject/ucpxkktx.html