• css中关于div中文本垂直居中的问题。


    面试几次下来,问的最多的问题就是水平居中问题,现在总结一下css的水平居中问题:vertical-align,在div中设置文本垂直居中,是不起作用的。那怎么样设置div的文本垂直居中?

    1、单行文本垂直居中:
    方法:把文本段落高度(line-height)和所在区域层的高度(height)设为一致即可。
    缺点:这种方法只对单行文本有效。

    这段代码很简,后面使用overflow:hidden的设置是为了防止内容超出容器或者产生自动换行,这样就达不到垂直居中效果了。更多CSS教

    程。 

    代码:
    div {   
            height:25px;  
            line-height:25px;  
            overflow:hidden;  
     }

     2、多行文本垂直居中:
    方法: 不设区域高度(让高度自适应), 然后在区域上下位置使用相同的填充控制,即使用padding属性。
    缺点:对固定高度的区间无效。

    如果一段内容,它的高度是可变的那么我们就可以使用就是设定Padding,使上下的padding值相同即可。同样的,这也是一种“看起来”的垂直居中方式,它只不过是使文字把<div>完全填充的一种访求而已。

    代码:

    div {   
     padding:25px;  
    }

     3、浏览器居中:

    方法: 设置position属性为绝对(absolute), 然后把在上方留下浏览器高度一半减去文本区域高度一半的距离,例如文本区域高度为浏览器高度的20%,那么上方应该留下50%-10%=40%;同理,在左边留下浏览器宽度一半减去文本区域宽度一半的距离。
    缺点:这种方法只是让文本在落在浏览器中央,而并非在某个特定区域的中间。

    代码:
    <div style="position:absolute; top:40%; left:40%; 20%; height:20%">
    ...............................................................................
    </div>

    4、多行文本固定高度的居中(考虑了浏览器兼容问题)。具体细节:http://www.cnblogs.com/dearxinli/p/3865099.html

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     <head>
      <title> 多行文字实现垂直居中 </title>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <style type="text/css">
     body { font-size:12px;font-family:tahoma;}
     div#outer {
      display:table;
      border:1px solid #FF0099;
      background-color:#FFCCFF;
      760px;
      height:400px;
      _position:relative;
      overflow:hidden;
      
     }
     div#middle {
      vertical-align:middle;
      display:table-cell;
      _position:absolute;
      _top:50%;
      
     }
     div#inner {
      _position:relative;
      _top:-50%;
      
     }
      </style>
     </head>
     <body>
     <div id="outer">
      <div id="middle">
       <div id="inner">
       <center>现在我们要使这段文字垂直居中显示!
    
     </center>
      </div>
     </div>
    </div>
     </body>
    </html>
    
  • 相关阅读:
    android高级页面效果集锦
    2018年Android的保活方案效果统计
    程序员如何预估自己的项目开发时间?
    Google开发者大会:你不得不知的Tensorflow小技巧
    练就Java24章真经—你所不知道的工厂方法
    一个完整Java Web项目背后的密码
    怎么捕获和记录SQL Server中发生的死锁
    使用跟踪标志位分析死锁
    通过SQL Server Profiler来监视分析死锁
    SQL Server中的死锁
  • 原文地址:https://www.cnblogs.com/jiangwenli/p/4886317.html
Copyright © 2020-2023  润新知