开发者社区> 问答> 正文

问一个css垂直居中的问题

如图,第一项和第二项要怎么垂直居中,vertical-align没效果,给第一二项设置行高?

<div class="col col-33">
      总计
</div>
<div class="col col-33">0</div>
<div class="col col-33">
  <div class="bg-default">0.00</div>
</div>

screenshot

展开
收起
a123456678 2016-05-27 18:02:57 2226 0
1 条回答
写回答
取消 提交回答
  • 首先要先搞清楚vertical-align是用来做什么,它是定义行内元素的基线相对于该元素所在行的基线的垂直对齐。看你这布局应该是div.col全部float了吧,这都不能称之为一行了,彼此之间联系除了位置关系基本上没啥联系。所以使用vertical-align没用。有以下几种方法:
    1.使用line-height,但是如果全两个div.col里面的文字超过一行,问题就来了。
    2.div.col使用display:inline-block,不要用浮动,但需要清除之间默认的间隔。
    3.div.col使用display:table-cell;vertical-align:middle。
    4.如果你不需要支持的低版本的浏览器,则可以考虑弹性布局display: flex;align-items:center,比较好用。
    5.设置div.col的高度,然后使用padding值让其居中,这种做法比较简单。
    以上都是提供思路,具体问题还需具体对待,根据需求选择。

    2019-07-17 19:18:33
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
零基础CSS入门教程 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载