zoukankan      html  css  js  c++  java
  • css参考---实现元素水平垂直居中

    css参考---实现元素水平垂直居中

    一、总结

    一句话总结:

    方式一:绝对定位+margin: auto;:子元素绝对定位,并且偏移全为0,margin设置为auto
    方式二:绝对定位+margin自身负偏移:子元素绝对定位且左(left)上(top)偏移50%,再margin负偏移左(left)上(top)自身的一半
    方式三:绝对定位+transform:translate 平移方式:子元素绝对定位且左(left)上(top)偏移50%,使用transform:translate实现自身左上偏移50%
    方式四:弹性盒子:设置父元素为弹性盒子,并且设置主轴对齐方式(justify-content)和侧轴对齐方式(align-items)都为center

    1、实现元素水平垂直居中 方式一:绝对定位+margin: auto;?

    子元素绝对定位,并且偏移全为0,margin设置为auto
    .parent_box{
        width: 400px;
        height: 400px;
        background-color: lightseagreen;
        position: relative;
    }
    .child_box{
        width: 200px;
        height: 200px;
        background-color: red;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        margin: auto;
    }

    2、实现元素水平垂直居中 方式二:绝对定位+margin自身负偏移?

    子元素绝对定位且左(left)上(top)偏移50%,再margin负偏移左(left)上(top)自身的一半
    .parent_box{
        width: 400px;
        height: 400px;
        background-color: lightseagreen;
        position: relative;
    }
    .child_box{
        width: 200px;
        height: 200px;
        background-color: red;
        position: absolute;
        left: 50%;
        top: 50%;
        margin-left: -100px;
        margin-top: -100px;
    }

    3、实现元素水平垂直居中 方式三:绝对定位+transform:translate 平移方式?

    子元素绝对定位且左(left)上(top)偏移50%,使用transform:translate实现自身左上偏移50%
    .parent_box{
        width: 400px;
        height: 400px;
        background-color: lightseagreen;
        position: relative;
    }
    .child_box{
        width: 200px;
        height: 200px;
        background-color: red;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%,-50%);
    }

    4、实现元素水平垂直居中 方式四:弹性盒子?

    设置父元素为弹性盒子,并且设置主轴对齐方式(justify-content)和侧轴对齐方式(align-items)都为center
    .parent_box{
        width: 400px;
        height: 400px;
        background-color: lightseagreen;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .child_box{
        width: 200px;
        height: 200px;
        background-color: red;
    }

    二、实现元素水平垂直居中

    博客对应课程的视频位置:

    方式一:绝对定位+margin: auto;:

    子元素绝对定位,并且偏移全为0,margin设置为auto

     1 .parent_box{
     2     width: 400px;
     3     height: 400px;
     4     background-color: lightseagreen;
     5     position: relative;
     6 }
     7 .child_box{
     8     width: 200px;
     9     height: 200px;
    10     background-color: red;
    11     position: absolute;
    12     left: 0;
    13     right: 0;
    14     top: 0;
    15     bottom: 0;
    16     margin: auto;
    17 }

    方式二:绝对定位+margin自身负偏移:

    子元素绝对定位且左(left)上(top)偏移50%,再margin自身负偏移左(left)上(top)自身的一半

     1 .parent_box{
     2     width: 400px;
     3     height: 400px;
     4     background-color: lightseagreen;
     5     position: relative;
     6 }
     7 .child_box{
     8     width: 200px;
     9     height: 200px;
    10     background-color: red;
    11     position: absolute;
    12     left: 50%;
    13     top: 50%;
    14     margin-left: -100px;
    15     margin-top: -100px;
    16 }

    方式三:绝对定位+transform:translate 平移方式:

    子元素绝对定位且左(left)上(top)偏移50%,使用transform:translate实现自身左上偏移50%

     1 .parent_box{
     2     width: 400px;
     3     height: 400px;
     4     background-color: lightseagreen;
     5     position: relative;
     6 }
     7 .child_box{
     8     width: 200px;
     9     height: 200px;
    10     background-color: red;
    11     position: absolute;
    12     left: 50%;
    13     top: 50%;
    14     transform: translate(-50%,-50%);
    15 }

    方式四:弹性盒子:

    设置父元素为弹性盒子,并且设置主轴对齐方式(justify-content)和侧轴对齐方式(align-items)都为center

     1 .parent_box{
     2     width: 400px;
     3     height: 400px;
     4     background-color: lightseagreen;
     5     display: flex;
     6     justify-content: center;
     7     align-items: center;
     8 }
     9 .child_box{
    10     width: 200px;
    11     height: 200px;
    12     background-color: red;
    13 }
     
  • 相关阅读:
    学习路线
    环境搭建时用到的文档
    商城技术重点分析
    svn 忽略文件
    实用的css3 学习笔记
    转载 《AngularJS》5个实例详解Directive(指令)机制
    php 单例设计模式 example
    html5 图片转base64预览显示
    curl返回常见错误码
    jquery的end(),addBack()方法example
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/12526349.html
Copyright © 2011-2022 走看看