Allin

做个靠谱的前端

CSS 小技巧1——水平居中和垂直居中的方法

一、水平居中的方法

  1. 行内元素:最简单的就是加上 text-align:center 属性。

  2. 块状元素:

2.1 对于宽度确定的块级元素,可以加上margin: 0 auto ; 属性,这样浏览器就会自动实现水平居中。不过,像分页这种不知道宽度的情况下,这种方法却不怎么适用。
        div{
                width: 500px;
                margin: 0 auto;
                background-color: #ff9999;
        }
2.2 对于宽度不确定的块级元素,有三种方法可以实现水平居中
  • 加入 table 标签
  • 将块级元素设置成行内元素,再用 text-align属性

  • 用浮动的方法实现水平居中

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>demo</title>
    <link rel="stylesheet" href="">
    <style type="text/css">
     div{
        position: relative;
        left: 50%;
        background-color: #ff9999;
    }
    </style>
</head>
<body>
    <div>
        <p>这是一行文本</p>
    </div>
</body>
</html>

二、垂直居中的方法

  1. 对于单行文本,设置 height 和 line-height 一致
div{
                background-color: #ff9999;
                height: 500px;
                line-height: 500px;
        }
  1. 对于多行文本,
2.1 将 div 放在 table 标签内,td 标签内的 vertical-align:middle 会实现垂直居中。
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>demo</title>
    <link rel="stylesheet" href="">
    <style type="text/css">
     table{
        background-color: #ff9999;
        height: 500px;
    }
    </style>
</head>
<body>
<table><tbody><tr><td>
    <div>
        <p>这是一行文本</p>
        <p>这是一行文本</p>
        <p>这是一行文本</p>
        <p>这是一行文本</p>
    </div>
</td></tr></tbody></table>
</body>
</html>
2.2 设置display:table-cell,激活属性,不过这种方法只支持 ie8及以上 chrome、firefox等、
         div{
                background-color: #ff9999;
                height: 500px;
                display: table-cell;
                vertical-align: middle;
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011282704/article/details/46802567
文章标签: css
个人分类: css
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

CSS 小技巧1——水平居中和垂直居中的方法

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭