zoukankan      html  css  js  c++  java
  • 关于DIV居中的问题。

    1.传统HTML CSS水平居中(不包含前端框架)

         1.1:设置固定宽度的方法

                关键代码描述:居中元素必须设置 宽度,然后设置margin

        

     1 <!DOCTYPE html>
     2 <html>
     3     <head>
     4         <meta>
     5     </head>
     6     <style>
     7        
     8 
     9       div{
    10             width: 500px;  /*必须设置宽度,以下margin才有效*/
    11             margin: 0 auto;
    12             border: 1px solid;
    13         }
    14  </style>
    15  <body>
    16         <div>
    17             aaaa
    18         </div>
    19     </body>
    20 </html>

        1.2:行内块设置,居中元素设置行内inline-block

               关键代码描述:子元素必须设置行内显示,父元素必须设置文本居中

    <!DOCTYPE html>
    <html>
        <head>
            <meta>
        </head>
        <style>
            .pages2{
                text-align: center;/*父元素必须设置文本居中,子元素设置行内现实,才会居中*/
                border:  1px solid;
            }
    
            .pages2 div {
                display: inline-block;/*子元素必须设置*/
               border: 1px solid;
               width: 500px;
            }
        </style>
        <body>
        <div class="pages2">
            <div>
                aaaa
            </div>
        </div>
        </body>
    </html>

    1.3设置浮动居中

         关键代码描述:父元素开启相对定位,左浮动,这个时候父元素处于水平线右侧,

            这个时候,只要将子元素右侧浮动一般,刚好居中显示。

    <!DOCTYPE html>
    <html>
        <head>
            <meta>
        </head>
        <style>
     
    
            .pages2{
                border: 2px solid red;
                position: relative;/*必须开启相对定位*/
                left: 50%;/*让父元素刚好处于水平线右侧*/
                float: left;/*目的是脱离文档流,使宽度为子元素内容的高度,宽度,用于配合定位*/
            }
    
            .pages2 div {
                border: 1px solid;
                position: relative;/*子元素开启相对定位*/
                right: 50%;/*相对父元素,右偏移一半,刚好居中*/
                float: left;/*配合定位*/
            }
        </style>
        <body>
        <div class="pages2">
            <div>
                aaaaa
            </div>
        </div>
        </body>
    </html>

    1.4:设置fit-content

          关键代码描述:设置父元素的fit-content 可以达到居中效果

    <!DOCTYPE html>
    <html>
        <head>
            <meta>
        </head>
        <style>
     
        .con{
            border: 1px solid;
            width: fit-content;/*必须设置fit-content*/
            width:-moz-fit-content;
            margin:     auto;
        }
        </style>
        <body>
    <div class="con">
        <div class="pages2">
            <div>
                aaaaa
            </div>
        </div>
    </div>
        </body>
    </html>

    1.5设置居中元素display:table,margin:0 auto;

    <!DOCTYPE html>
    <html>
        <head>
            <meta>
        </head>
        <style>
     
    
            .pages2 div{
                border: 1px solid;
                display: table; /*当前居中元素设置*/
                margin: 0 auto;/*当前居中元素设置*/
            }
        </style>
        <body>
    <div class="con">
        <div class="pages2">
            <div>
                aaaaa
            </div>
        </div>
    </div>
        </body>
    </html>

    1.6,父元素设置dispaly:flex  jsutify-content:center

    <!DOCTYPE html>
    <html>
        <head>
            <meta>
        </head>
        <style>
     
    
            .con{ /*父元素设置*/
                border: 1px solid;
               display: flex;
               justify-content: center;
            }
        </style>
        <body>
    <div class="con">
        <div class="pages2">
            <div>
                aaaaa
            </div>
        </div>
    </div>
        </body>
    </html>

    1.7 父元素设置display:flex 子元素设置margin:0 auto

    <!DOCTYPE html>
    <html>
        <head>
            <meta>
        </head>
        <style>
     
    
            .con{
                border: 1px solid;
               display: flex;
             
            }
    
            .pages2 { 
                margin:  0 auto;
            }
        </style>
        <body>
    <div class="con">
        <div class="pages2">
            <div>
                aaaaa
            </div>
        </div>
    </div>
        </body>
    </html>

    2.div垂直居中

     2.1 设置父元素的display:flex ; flex-direcion:column;justify-content:center

      关键代码描述:一定要设置高度height

    <!DOCTYPE html>
    <html>
        <head>
            <meta>
        </head>
        <style>
     html,body{
         width: 100%;
         height: 100%;
     }
    
            .pages2 div{
                border: 1px solid;
                display: table;
                margin: 0 auto;
            }
    
            .con{
                height: 100%; /* 设在高度 */
                display: flex;
                flex-direction: column;
                justify-content: center;
            }
        </style>
        <body>
    <div class="con">
        <div class="pages2">
            <div>
                aaaaa
            </div>
        </div>
    </div>
        </body>
    </html>

      2.2 设在父元素display:table ; 子元素两个属性

    <!DOCTYPE html>
    <html>
        <head>
            <meta>
        </head>
        <style>
     html,body{
         width: 100%;
         height: 100%;
     }
    
    
            .con{
                height: 100%;/* 一定要设置高度*/
                display: table;
              
    
            }
    
            .pages2 {
                display: table-cell;
                vertical-align: middle;
               
            }
        </style>
        <body>
    <div class="con">
        <div class="pages2">
            <div>
                aaaaa
            </div>
        </div>
    </div>
        </body>
    </html>

    2.3 设置父元素的display:flex

    <!DOCTYPE html>
    <html>
        <head>
            <meta>
        </head>
        <style>
    
    
    
            .con{
                height: 100vh;
                display: flex;
                justify-content: center;
                align-items: center
              
    
            }
    
    
        </style>
        <body>
    <div class="con">
        <div class="pages2">
            aaa
        </div>
    </div>
        </body>
    </html>

    2.4

    <!DOCTYPE html>
    <html>
        <head>
            <meta>
        </head>
        <style>
    
    
    
            .con{
                height: 100vh;
               display: grid;
            }
    
            .pages2{
                margin: auto;
            }
    
        </style>
        <body>
    <div class="con">
        <div class="pages2">
            aaa
        </div>
    </div>
        </body>
    </html>
  • 相关阅读:
    MYbatis调试日记(三)
    Mybatis错误调试(二)
    【转载】MyBatis之传入参数
    Mybatis代码调试问题总结(一)
    【转载】Mybatis多参数查询映射
    未整理的资源
    Strace--系统调用分析问题集锦
    java初始化过程中成员变量
    java三元表达式编程规范问题
    转:Java的一道面试题----静态变量初始化过程
  • 原文地址:https://www.cnblogs.com/jack-xsh/p/11567614.html
Copyright © 2011-2022 走看看