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

原创 2015年07月08日 13:54:41

一、水平居中的方法

  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;
版权声明:本文为博主原创文章,未经博主允许不得转载。

垂直和水平居中方法小结

垂直和水平居中方法小结 水平居中 行内元素 text-align:center; 块元素 1.定宽块元素水平居中 margin:0 auto; 2.不定宽块元素水平居中 方法...
  • fengyinchao
  • fengyinchao
  • 2015年11月25日 20:54
  • 875

用css实现垂直水平居中的几种方法

1.用line-block和vertical-align来实现居中:这种方法适合于未知宽度高度的情况下。 Title #container{ ...
  • baidu_24024601
  • baidu_24024601
  • 2016年04月12日 11:01
  • 6031

盘点8种CSS实现垂直居中水平居中的绝对定位居中技术

我们经常用margin:0 auto来实现水平居中,而一直认为margin:auto不能实现垂直居中……实际上,实现垂直居中仅需要声明元素高度和下面的CSS: .Absolute-Center { ...
  • freshlover
  • freshlover
  • 2013年09月11日 21:06
  • 324990

div表格定高垂直居中,水平居中

近日做项目,遇到一个难题:就是用div ul li 做表格时,要不就是水平居中不了,要不是垂直居中不来 垂直居中用vertical-align: middle;,但是浮动把它给无效化了 因为定高,所以...
  • xueshanghon_L
  • xueshanghon_L
  • 2016年03月25日 12:14
  • 1643

纯CSS完美实现垂直水平居中的6种方式

纯CSS完美实现垂直水平居中的6种方式 时间 2016-07-29 13:12:19 SegmentFault 原文  https://segmentfault.com/a/119...
  • shiyuqiong
  • shiyuqiong
  • 2016年07月30日 22:16
  • 1714

CSS设置元素水平居中、垂直居中方式汇总

按照水平居中、垂直居中、行内元素、块级元素等条件进行组合获取效果水平居中:行内元素解决方案只需要把行内元素包裹在一个属性display为block的父层元素中,并且把父层元素添加如下属性即可:.par...
  • javaloveiphone
  • javaloveiphone
  • 2016年04月05日 16:01
  • 892

CSS水平居中和垂直居中的各种方法

转自:前端开发-武方博
  • mmrsdym
  • mmrsdym
  • 2014年08月25日 11:09
  • 751

七种CSS方式让一个容器水平垂直居中

阅读目录 方法一:position加margin  方法二: diaplay:table-cell  方法三:position加 transform  方法四:flex;align-ite...
  • u013063153
  • u013063153
  • 2016年09月18日 10:51
  • 1081

css如何实现图片垂直水平居中

图片的居中显示css有很多方法,但在很多情况下有的方法无效,这是件很头疼的事情,比如一般设置图片属性text-align:centre水平居中,但这个方法经常无效,很多前端攻程师都有研究过或者说是搜索...
  • m0_37290635
  • m0_37290635
  • 2017年03月12日 21:51
  • 314

html里元素水平居中和垂直居中的几种方式

站在前辈们的肩膀上来学习和总结! 1.文本的居中 height+line-height:配合使用,垂直方向居中 text-align:父级的text-align,水平居中 ps:text-al...
  • weixin_37610328
  • weixin_37610328
  • 2017年04月06日 20:32
  • 258
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:CSS 小技巧1——水平居中和垂直居中的方法
举报原因:
原因补充:

(最多只允许输入30个字)