【问题标题】:Button's text vertical and horizontal alignment issueButton的文本垂直和水平对齐问题
【发布时间】:2014-10-08 09:00:41
【问题描述】:

我有一些按钮,里面有文字。我要做的是将它们从垂直和水平对齐到中间。在示例中我有 3 个按钮(左侧更大)

当它是一个长文本时,它放置在按钮中间的某些行上 - 它不是从垂直中间开始但看起来不错,但是当我得到短文本时,它(“oneWord”)然后附加到顶部一切看起来都很乱。

我读了一些例子:

How do I vertically align something inside a span tag? Button's text vertical align

How do I vertically align something inside a span tag?

vertical-align:middle for text in button

在这一切之后,我将我的风格设置为:

.spanContainer {
    height: 70px;
}

.spanContainer span {
    height: 70px;
    display: table-cell;
    vertical-align: middle;
    white-space: normal;
}

在所有更改之后,我得到了这些结果:

在垂直边它在中间(短文本和长文本) - 好的,但在水平的短文本它从左侧开始

问题是display: table-cell 将它浮动到左侧以显示短文本! 如何创建这些按钮,即使我有一个单词或长文本,它们都将从水平和垂直按钮的中间开始?

【问题讨论】:

    标签: javascript html css alignment


    【解决方案1】:

    试试下面的sn-p

    CSS

    .spanContainer {
        height: 70px;
        display: table;
        width: 200px;
    }
    
    .spanContainer span {
        background-color: #ff0000;
        display: table-cell;
        text-align: center;
        vertical-align: middle;  
    } 
    

    或者不要在spanContainer上使用width,而是在内部span上使用一些padding

    .spanContainer {
        height: 70px;
        display: table;
    }
    
    .spanContainer span {
        background-color: #ff0000;
        display: table-cell;
        text-align: center;
        vertical-align: middle;
        padding: 0px 20px 0px 20px; 
    } 
    

    HTML

    <span class="spanContainer">
      <span>something</span>
    </span>
    

    First solution | Second solution

    【讨论】:

    • display: table in spanContainer 实际上把它放在中间,但它会重新调整宽度按钮的大小,我不能使用 width:100% 因为这些按钮从一开始就是宽度固定的
    • @Dima 好吧,您的按钮也可能是 200 像素宽 ;)
    • @Dima 我添加了另一个解决方案;因此,您不必指定spanContainer 中的width,您可以在内部span 中添加一些padding
    • @Dima 实际上,您甚至不需要内部 span 上的 padding,但在这种情况下,您将如何看到它是水平居中的 :) 如果没有 widthpadding , 元素的宽度将等于里面的内容。
    猜你喜欢
    • 2015-02-04
    • 1970-01-01
    • 2017-06-21
    • 1970-01-01
    • 2012-10-10
    • 1970-01-01
    • 1970-01-01
    • 2013-11-25
    相关资源
    最近更新 更多