• 利用css来让一个div在页面中垂直居中的方法


    一、如何让一个div在页面中垂直居中(请至少列出三种)

    1.距离页面窗口左边框和上边框的距离设置为50%,这个50%就是指页面窗口的宽度和高度的50%,最后将该DIV分别左移和上移,左移和上移的大小就是该DIV宽度和高度的一半。

    300px; 

     height:200px; 

     position:absolute;

     left:50%

     top:50%;  

     margin:-100px 0 0 -150px ;

    2.使用jquery代码

     $(window).resize(function(){ 

       $(".mydiv").css({ 

         position: "absolute", 

         left: ($(window).width() - $(".div").outerWidth())/2, 

         top: ($(window).height() - $(".div").outerHeight())/2 

       });        

    }); 

    3.使用绝对定位;top,bottom,left,right分别都为零

    父元素设置为:

      800px;

               height:500px;

               border:2px solid #000;

               position:relative;

    子元素设置为:

      200px;

                height:200px;

                margin: auto;

                position: absolute;

                top: 0; left: 0; bottom: 0; right: 0;

                

    4.(此方法在IE中可以实现只元素在父级元素中垂直居中,但在chrome中还没有实现水平居中),使用display:table-cell

    父元素设置为:

    800px;

    height:500px;

    border:2px solid #000;

    display:table-cell;

    vertical-align:middle;

    text-align: center;

    子元素设置为:

    200px;

    height:200px;

    display:inline-block;

    5.使用弹性布局的方式来解决

    父级元素设置为

    800px;

    height:500px;

    border:2px solid #000;

    display:flex;

    justify-content:center;

    align-items:center;

    子元素设置为:

     200px;

    height: 200px;

    background-color: red;

    6.绝对定位和transfrom

    style>
        *{
            padding: 0;
            margin: 0;
        }
        .box{
             300px;
            height: 300px;
            background:#e9dfc7; 
            border:1px solid red;
            position: relative;
    
        }
        img{
             100px;
            height: 100px;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
        }
    </style>
    <!--html -->
    <body>
        <div class="box" >
            ![](3.jpg)
        </div>
    </body>
  • 相关阅读:
    HDU6300(2018多校第一场)
    HDU6301(2018多校第一场)
    HDU6308(2018多校第一场)
    HDU6299(2018多校第一场)
    HDU6298(2018多校第一场)
    HDU1255覆盖的面积
    51nod 2133 排队接水
    bryce1010专题训练——Splay树
    img
    操作系统实验代码
  • 原文地址:https://www.cnblogs.com/fireporsche/p/6290637.html
Copyright © 2020-2023  润新知