• CSS使文字、大小不固定的图片垂直居中


    一:单行文字垂直居中

    • 使用line-height为父元素高度即可。

    二:多行文字垂直居中

    • 使用display:table-cell属性。
    • 将父元素设置为display:table-cell,同时vertical-align:middle。
    • html代码
      <div id="content">
          <span>测试多行文字垂直居中 <br />测试多行文字垂直居中 <br />测试多行文字垂直居中</span>
      </div>

      css代码

      #content{
          text-align: left;
          padding: 0 20px;
          width: 300px;
          height: 150px;
          border: 5px solid #EBF3FB;
          display: table-cell;
          vertical-align: middle;
      }

      效果展示

        

    三:大小不固定的图片垂直居中

    • 同样使用display:table-cell属性。
    • html代码:
      <div id="content">
          <img src="img/1.jpg" alt="" id="img"/>
      </div>

      css代码

      #content{
          width: 500px;
          height: 500px;
          border: 5px solid #EBF3FB;
          display: table-cell;
          vertical-align: middle;
      }
      #img{
          max-width: 200px;
          max-height: 200px;
      }

      效果展示

    注意:

    • display:table-cell属性指让标签元素以表格单元格的形式呈现。
    • 但这个属性与float,position等属性冲突,设置上下居中将会不生效。且像表格元素一样,对margin值无反应。
    • 这时只要在标签中间加上一层元素,设置中间元素的display属性即可。

    代码:

    <div id="content">
        <span id="img_wrapper">
            <img src="img/1.jpg" alt="" id="img"/>
        </span>
    </div>
    #content{
        width: 500px;
        height: 500px;
        border: 5px solid #EBF3FB;
    }
    #img{
        max-width: 200px;
        max-height: 200px;
    }
    #img_wrapper{
        height: 500px;
        display: table-cell;
        vertical-align: middle;
    }

     注:本代码兼容各大主流浏览器,IE兼容到IE8。

  • 相关阅读:
    Git Stash用法
    动态设置ImageView的宽高以及位置
    【算法笔记】B1047 编程团体赛
    【算法笔记】B1043 输出PATest
    【算法笔记】B1042 字符统计
    【算法笔记】B1039 到底买不买
    【算法笔记】B1038 统计同成绩学生
    【算法笔记】B1033 旧键盘打字
    【算法笔记】B1029 旧键盘
    【算法笔记】B1048 数字加密
  • 原文地址:https://www.cnblogs.com/yi0921/p/CSS.html
Copyright © 2020-2023  润新知