zoukankan      html  css  js  c++  java
  • 垂直居中

    关于垂直居中的方法已经老生常谈了,这里只记录下自己最近发现的垂直居中方法。

    1、通过vertival-align:middle:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style type="text/css">
            *{
                margin: 0;
                padding: 0;
            }
            .wrap{
                width: 1000px;
                height: 500px;
                margin: 0 auto;
                text-align: center;
                border: 1px solid #ccc;
            }
            .text{
                vertical-align: middle;
            }
            .text:before{
                content: '';
                display: inline-block;
                width: 1px;
                height: 100%;
                margin-left: -1px;
                vertical-align: middle;
            }
        </style>
    </head>
    <body>
        <div class="wrap">
            <span class="text">it is a word</span>
        </div>
    </body>
    </html>

    这种方法是通过元素与伪元素设置vertical-align:middle来实现的,很多朋友对这个属性都是一知半懂,可以看看这位大神的文章:http://www.zhangxinxu.com/wordpress/2010/05/我对css-vertical-align的一些理解与认识(一)/

    2、通过绝对定位与margin:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style type="text/css">
            .wrap{
                position: absolute;
                top: 0;
                right: 0;
                bottom: 0;
                left: 0;
                width: 500px;
                height: 300px;
                border: 1px solid #ccc;
                margin: auto
            }
        </style>
    </head>
    <body>
        <div class="wrap">is is a word</div>
    </body>
    </html>

    这个就不必多说了,太基础。

    3、通过table-cell实现。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style type="text/css">
            div{
                display: table-cell;
                height: 10em;
                border: 1px solid #ccc;
                vertical-align: middle;
            }
            span{
                display: inline-block;
                vertical-align: middle;
            }
        </style>
    </head>
    <body>
        <div>
            <span>这是一个关于多行文字的垂直居中<br>这是第二行</span>
        </div>
    </body>
    </html>

    还有很多方法可以实现,比如通过表格之类的。

  • 相关阅读:
    你喜欢使用eclipse+tomcat编程吗?!
    "ERR_GFX_D3D_INIT", GTA5-报错解决办法
    这样写JS的方式对吗?
    webui layout like desktop rich client
    2014年12月23日00:42:54——PS4
    2014年12月20日00:33:14-遮罩+进度条-extjs form.isvalid
    十分钟部署智能合约
    idea clion编译器
    parity 注记词
    go语言学习笔记
  • 原文地址:https://www.cnblogs.com/11lang/p/6617058.html
Copyright © 2011-2022 走看看