zoukankan      html  css  js  c++  java
  • css实现高度垂直居中

    1:单行文字垂直居中:

         如果一个容器中只有一行文字的话,定义height(高度)和 line-height(行高)相等即可。

      如:<div style="height:25px;line-height:25px;overflow:hidden">aa</div>

    2:多行文本固定高度垂直居中:

    核心:display:table 和display:table-cell ;vertical-align:middle;

    兼容:ie7+

    1 <div class="wrapper">
    2     <div class="content">content age</div>
    3 </div>

    相对应的css代码如下:

    .wrapper{  
        height:400px;  
        display:table;  
    }  
    .content{  
        vertical-align:middle;  
        display:table-cell;  
        border:1pxsolid#FF0099;  
        background-color:#FFCCFF;  
        width:760px;               }                                                                                                              

    核心:display:table 和display:table-cell ;vertical-align:middle;以及使用绝对定位

    兼容:ie6+

    
    
    <div class="wrap">
         <div class="subwrap">
            <div class="content">aaaaa</div>
         </div>
     </div>
     

    css代码部分:

    .wrap{  
        display:table;   //*****************************************display:table
        border:1pxsolid#FF0099;  
        background-color:#FFCCFF;  
        width:760px;  
        height:400px;  
        *position:relative; //*************************************** *position:relative
        overflow:hidden;  
    }  
    .subwrap{  
    vertical-align:middle;   //************************************vertical-align:middle; 

    display:table-cell; //*************************************display:table-cell
    *position:absolute; 
    *top
    :50%;
    }
    .content
    {
    *position
    :relative;
    *top
    :-50%;
    }

    3:多行文本未知高度垂直居中:

    现代浏览器的最新版都支持inline-block,只有该死的ie6、7不支持inline-block,但ie6、7可以通过 display:inline;zoom:1;来模拟。

    但是在firefox,safari,opera,ie8+中的 inline-block 元素之间会莫名其妙多出3px的间距,其实这个是换行符,如果将 inline-block 元素间的换行符去掉,这3px的间距就会消失了。 
    有没有在不影响代码美观的情况下去掉间距尼,答案是有的。可以在inline-block的父元素中加上 font-size:0;然后在 inline-block讲字体设回来。 

    下面是inline-block兼容的代码: 

    {
    display:inline-block;
    *display:inline;
    *zoom:1;
    width:100px;
    vertical-align:top;
    } 

     

  • 相关阅读:
    算法竞赛入门经典习题2-3 韩信点兵
    ios入门之c语言篇——基本函数——5——素数判断
    ios入门之c语言篇——基本函数——4——数值交换函数
    144. Binary Tree Preorder Traversal
    143. Reorder List
    142. Linked List Cycle II
    139. Word Break
    138. Copy List with Random Pointer
    137. Single Number II
    135. Candy
  • 原文地址:https://www.cnblogs.com/QingFlye/p/3969058.html
Copyright © 2011-2022 走看看