zoukankan      html  css  js  c++  java
  • 元素水平居中的方法

    <!-- (1)对于行内元素或具有inline-block属性的元素居中,比如span,img等可以使用text-align:center来实现 -->
    .box1{
                 200px;
                border: 1px solid #000;
                text-align:center;
            }
    
    .son1{
                100px;
                background-color:#ddd;
            }
    <div class="box1">
            <span class="son1">我是span元素</span>
        </div>
     <!-- (2)使用margin:0 auto
                    使用margin:auto的方式与第一种不同的是,这种css属性作用域元素本身,
                    且必须给元素设定了宽度和具有display:block的块级元素
        -->
    .box2{
                 200px;
                border: 1px solid #000;
            }
            .son2{
                 150px;
                background-color:#ddd;
                display:block;
                margin:0 auto;
            }
    <div class="box2">
            <span class="son2">我是span元素</span>
        </div>
    <!-- (3)定位居中 :这种方式的好处是行内元素和块级元素都适用,但是需要知道元素本身的宽度 -->
    .box3{
                 200px;
                height:200px;
                border: 1px solid #000;
                position:relative;
            }
            .son3{
                 150px;
                height: 50px;
                background-color:#ddd;
                position:absolute;
                left:25px;
                top:75px;
            }
    <div class="box3">
            <span class="son3">我是span元素</span>
        </div>
    <!-- (4)margin:auto与定位组合使用:这种方式的好处是行内元素和块级元素都适用,但是需要知道元素本身的宽度 -->
    .box4{
                 200px;
                height:200px;
                border: 1px solid #000;
                position:relative;
            }
            .son4{
                 150px;
                height: 50px;
                background-color:#ddd;
                position:absolute;
                margin:auto;
                left:0;
                right:0;
                top:0;
                bottom:0;
            }
     <div class="box4">
            <span class="son4">我是span元素</span>
        </div>
    <!-- (5)负margin 和定位组合使用:这种方式的好处是行内元素和块级元素都适用,但是需要知道元素本身的宽度  -->
    .box5{
                 200px;
                height:200px;
                border: 1px solid #000;
                position:relative;
            }
    
            .son5{
                150px;
                height:50px;
                background-color:#ddd;
                position:absolute;
                left:50%;
                top:50%;
                margin:-25px 0 0 -75px;
            }
    <div class="box5">
            <span class="son5">我是span元素</span>
        </div>
     
     
     
    <!-- (7)translate 和定位组合使用: -->
    .box7{
                 200px;
                height:200px;
                border: 1px solid #000;
                position:relative;
            }
            .son7{
                 150px;
                height: 50px;
                background-color:#ddd;
                position:absolute;
                left:50%;
                top:50%;
                -webkit-transform: translate(-50%,-50%);
                   -moz-transform: translate(-50%,-50%);
                    -ms-transform: translate(-50%,-50%);
                     -o-transform: translate(-50%,-50%);
                        transform: translate(-50%,-50%);
            }
    <div class="box7">
            <span class="son7">我是span7元素</span>
        </div>
    <!-- (8)使用flex居中:使用flex居中不需要知道元素本身的宽高及元素的属性 -->
     .box8{
                 200px;
                height:200px;
                border: 1px solid #000;
                display:-webkit-box;
                display: -moz-box;
                display: -ms-flexbox;
                display: -webkit-flex;
                display:flex;
                justify-content:center;
                align-items:center;
            }
            .box8>span{
                background-color:#ddd;
            }
    <div class="box8">
            <span>我是span8元素</span>
        </div>
    <!-- (9)使用table-cell居中:需要添加额外的元素作为外部容器 -->
    .box9{
                 200px;
                height:200px;
                border: 1px solid #000;
                display:table;
            }
            .center-core{
                display:table-cell;
                text-align:center;
                vertical-align:middle;
            }
    <div class="box9">
            <div class="center-core">
                <span>我是span9元素</span>
            </div>
        </div>
  • 相关阅读:
    requirejs 第一个实例
    ionic + cordova 环境搭建
    免安装mysql配置
    ConcurrentHashMap
    volatile和synchronized
    zookeeper集群安装
    题目
    Nginx
    CountDownLatch
    自己总结
  • 原文地址:https://www.cnblogs.com/zhuMother/p/12205452.html
Copyright © 2011-2022 走看看