zoukankan      html  css  js  c++  java
  • 元素居中问题

    1.使单行文本垂直居中显示。

    line-height:父级的高度

    2.使单行文本或行内元素水平居中显示。

      text-align:center;

    3.使块元素居中显示

      1.给父元素相对定位,给子元素绝对定位:position:absolute;top:50%;left:50%;margin-top:-高度/2;margin-left:-宽度/2;  (这种写法,当元素的宽高改变后药手动去修改)

      2.给父元素相对定位,给子元素绝对定位:position:absolute;transform:translateX(-50%);translateY(-50%);  (这个移动,在后期修改时,会造成一定的麻烦)

      3..给父元素相对定位,给子元素绝对定位:position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;   (比较完美)

      4.给父元素display:flex;给子元素margin:auto;(这种写法,父元素内不能再有其他子元素,不然都会居中)

      5,给父级加display:flex;justify-content:center; (主轴对齐)               align-items:center;    (侧轴对齐)(这种写法,子元素会全部居中)

    4.上面的方法是用定位,或者弹性盒来布局,下面是用vertical-align原理。

        水平居中:margin:数值 auto;(简单直接)

        垂直居中:

          给父元素display:table-cell;vertical-align:middle;(这种方法,是把父元素的元素类型变为表格的单元格,弊端是父元素不能浮动,子元素可  以    浮动,样式给一个群组加,则会在一行显示,父元素的margin,padding失效,父元素的宽高用百分比表示无效)

        html:

         <div><p>ouiou</p><span></span></div>

        css:

          div{
                         200px;
                        height: 200px;
                        border: 1px solid red;
                        text-align: center;                
                  }
                
                p{
                    vertical-align: middle;
                    display: inline-block;
                }
                span{
                    display: inline-block;
                     0;
                    height: 100%;
                    vertical-align: middle;
                }

       vertical-align应用于行内元素以及table-cell元素,是依赖div内子元素最高的高来实现对某元素居中显示的,只需要建立一个新元素,给他加上display:inline-block,再把它的高设置为100%就可以了。 

        

  • 相关阅读:
    吴恩达机器学习笔记——梯度下降算法(2)
    吴恩达机器学习笔记——梯度下降算法(1)
    Java面向对象
    实体框架
    Android Studio 3.4.1中使用com.android.support.v4.view.ViewPager提示不存在该类或程序闪退
    7、认识 Android Service
    安卓付费课程
    在Android Studio中如何添加GSON
    android studio 添加Volley
    android studio里面怎么看file explorer啊?
  • 原文地址:https://www.cnblogs.com/lzn0330/p/9451365.html
Copyright © 2011-2022 走看看