zoukankan      html  css  js  c++  java
  • 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>
    
  • 相关阅读:
    hdu4597 Play Game DP
    poj2253 Frogger Dijkstra变形
    poj1797 Heavy Transportation Dijkstra算法的简单应用
    49.将手机收藏信息保存到文件中
    48.XML保存衣服尺码信息
    47.多客户端用户登录
    46. 模拟用户登录的功能
    45.客户咨询问题
    44. 客户端发送信息给服务器端
    43.创建线程的两种方法
  • 原文地址:https://www.cnblogs.com/jiangwenli/p/4886317.html
Copyright © 2011-2022 走看看