zoukankan      html  css  js  c++  java
  • 如何用css让一个容器水平垂直居中

    方法一:

    以前设置里面的绿div总是会使用{position:absolute;left:50%;top:50%;margin-left:-div宽度的一半;margin-top:-div高度的一半}。

    这样比较麻烦,还需要自己计算高度和宽度,后来发现可以使用transform:translate(-50%,-50%);来代替margin,就能很好的解决了。

    代码:

    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
        .box{
          400px;
          height:400px;
          margin:0 auto;
          position:relative;
          border:1px solid black;
        }
        .content{
          200px;
          height:200px;
          background:green;
          position:absolute;
          left:50%;
          top:50%;
          transform:translate(-50%,-50%);
        }
        </style>
      </head>
      <body>
        <div class="box">
          <div class="content"></div>
        </div>
      </body>
    </html>

    方法二:

    <div class="box4">
        <div class="child4"></div>
    </div>
    .box4{
        100px;
        height:100px;
        background:gray;
        position:relative;
    }
    .child4{
        background:red;
        50px;
        height:50px;
        margin:auto;
        position:absolute;
        top:0;
        left:0;
        bottom:0;
        right:0;
    }

    方法三:

    <div class="box1">
        <div class="child1"></div>
    </div>
            .box1{
                    100px;
                    height:100px;
                    background:gray;
                    text-align:center;/*居中效果只对文本内容和行内元素有效*/
                    display:table-cell;
                    vertical-align:middle;
                }
                .child1{
                    display:inline-block;
                    background:red;
                    50px;
                    height:50px;
                }

    方法四:

    <div class="box2">
        <div class="child2"></div>
    </div>
    .box2{
        100px;
        height:100px;
        background:gray;
        display:table-cell;
        vertical-align:middle;
    }
    .child2{
        margin:0 auto;/*在元素本身上设置,可以实现块级元素水平居中*/
        background:red;
        50px;
        height:50px;
    }

     方法五:

    display:flex + margin:auto

    <div class="box2">
        <div class="child2"></div>
    </div>
    .box2{
        width:100px;
        height:100px;
        background:gray;
        display:flex;
    }
    .child2{
        margin:auto;
        background:red;
        width:50px;
        height:50px;
    }
  • 相关阅读:
    Flask ~~“一见钟情之初体验”(Web表单)
    Flask ~~“一见钟情之初体验”(Flask~~过滤~包含~继承~宏)
    Flask ~~“一见钟情之初体验”(flask的网页模板介绍及使用①)
    Flask ~~“一见钟情之初体验”(flask的request模块的属性及上下文)
    Flask ~~“一见钟情之初体验”(cookie与session简单使用)
    Flask 入门(补充)~~~“一见钟情之初体验”
    表单中的单文件点击和拖拽上传
    HTML5存储之 indexedDB
    JavaScript中的 offset, client,scroll
    js 获取 url 里面的参数
  • 原文地址:https://www.cnblogs.com/rachelch/p/7515040.html
Copyright © 2011-2022 走看看