美文网首页
垂直居中和水平居中

垂直居中和水平居中

作者: 天边的拾荒者 | 来源:发表于2017-04-17 10:28 被阅读0次

一.水平居中

(1)文本图片行内元素水平居中
.inlineCenter{
    text-align:center;
    background:#eeeb38;
}
<div class = "inlineCenter">
    行内元素居中
</div>
行内元素居中.png
2.确定宽度的块级元素水平居中
设置左右边距auto和宽度
.blockCenter{
            margin-left: auto;
            margin-right: auto;
            width: 20%;
            text-align: center;
            background: #eee;
        }
<div class="blockCenter">
      确定宽度的块级元素居中
</div>
确定宽度块级元素.png
(3)宽度不定的块级元素水平居中
    a.设置元素display:inline-block,text-align:center 
      缺点:失去块级元素特性
    b.使用相对定位居中:
        父元素:{float:left,position:relative,left:50%}
        子元素:{position:relative,left:-50%}
        缺点:文本脱离文档流,对后面布局会有影响
        .blockCenter{
            float: left;
            position: relative;
            left:50%
        }
        .block{
            position: relative;
            left:-50%;
            background: #59aecc;
        }
    <div class="blockCenter1">
        <div class="block">
            块居中,父元素设置左浮动,相对定位,左边50%,子元素相对定位,左边-50%
        </div>
    </div>
相对定位块居中.png

(4) 使用flex实现水平居中

弹性盒模型可以方便地实现水平和垂直居中,
效果可作用于多个元素,推荐使用flex进行水平和垂直居中
.flexCenter{
            display: flex;
            justify-content: center;   /*设置主轴对齐方式*/
            background: #cc996a;
        }
<div class="flexCenter">
    <div style="background: #46ee24">
        使用flex实现居中
    </div>
    <div style="background: #cc4f28">
        使用flex实现居中
    </div>
</div>
使用flex实现居中.png

二.垂直居中

(1) 父元素高度不确定的文本、图片、块级元素的垂直居中
此时需要文本,图片,块级元素将父元素“撑开”
设置父元素上下padding相同即可
.verticalCenter{
            padding: 20px 0;
            background: #59aecc;
        }
<div class="verticalCenter">
    <div style="background: #eee;width: 10%;height:50px">
        垂直居中
    </div>
</div>


父元素高度不定的垂直居中.png
(2)父元素高度确定的单行文本的垂直居中
通过给父元素设置line-height来实现
line-height值和父元素高度值相同
.verticalCenter{
            padding: 20px 0;
            background: #59aecc;
        }
.textVerticalCenter{
    background: #e0ee0d;
    width: 10%;
    height:50px;
    line-height: 50px;
}
<div class="verticalCenter">
    <div class = "textVerticalCenter">
        垂直居中
    </div>
</div>
文字居中.png
(3)使用flex实现垂直居中
设置主轴为垂直方向,设置主轴的对齐方式为居中
下面用flex实现了水平和垂直方向都居中
.flexVerticalCenter{
            height: 100px;
            display: flex;
            flex-direction: column; /*设置主轴为垂直方向*/
            justify-content: center;/*设置主轴对齐方式*/
            align-items: center;   /*设置交叉轴对齐方式*/
            background: #cc996a;
        }
<div class="flexVerticalCenter">
    <div style="background: #46ee24">
        使用flex实现居中
    </div>
    <div style="background: #cc4f28">
        使用flex实现居中
    </div>
</div>
flex实现垂直居中.png

相关文章

  • css水平居中和水平垂直居中

    水平居中和水平垂直居中demo

  • 常用的居中方法

    本文将介绍的居中方法有 ,水平居中,垂直居中和水平垂直居中。 一水平居中 二水平垂直居中

  • css 居中

    居中有水平居中和垂直居中。 水平居中+垂直居中 flex法 position法 就是计算呗~ 参考 CSS各种居中...

  • 居中对齐

    行内元素居中[#hang]垂直居中[#hc]水平居中[#hs] 块级元素居中[#kuai]垂直居中[#kc]水平居...

  • 水平居中与垂直居中

    水平居中和垂直居中可以说是在开发中经常遇到的问题,网上搜索水平居中和垂直居中的方法有很多,有的方法并不是很好,所以...

  • 实现元素水平居中的五种方法

    概述 我们平时看到的居中效果主要分为三大类,水平居中,垂直居中和水平垂直居中,在这里总结以下元素水平居中的方法。 ...

  • 水平居中和垂直居中

    水平居中设置--行内元素 水平居中设置--定宽块级元素 水平居中设置--不定宽块状元素 垂直居中--父元素高度确定...

  • 水平居中和垂直居中

    #水平居中 1.1.已知宽度块元素宽度 : 1.2.文本内容居中: 1.3.通过表格: 1.4.已知宽度,通过设置...

  • 水平居中和垂直居中

    假设有如下html结构 一、实现item在header内水平居中1、item定宽度 2、item不定宽度ps: m...

  • 水平居中和垂直居中

    水平居中 1、行内元素 父元素: 此方法父元素有没有宽度都ok 2、块级元素 需要居中的元素设置宽度 设置css ...

网友评论

      本文标题:垂直居中和水平居中

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