带数字和文字的按钮

时间:2014-03-28 17:55:30

标签: html css css3

我有一个HTML按钮,我必须像智能手机拨号盘一样显示它。喜欢数字和ABC等。

<a href="" class="button">
    1
    <span>ABC</span>
</a>
除了文本在按钮中不可见外,一切都很好。我该如何解决?

8 个答案:

答案 0 :(得分:2)

您只需更改跨度的样式即可正确包装。

display: inline-block;添加到a span选择器,使其如下所示:

a span {font-size:8px; text-transform:uppercase; display:block; text-align:center; line-height:0em; margin-top:-5px; font-style:italic; display: inline-block; }

最好的解决方案通常是最简单的。在这种情况下,只需添加一行。

答案 1 :(得分:0)

您需要做的就是在按钮元素中添加height。这是一个更新的小提琴:http://jsfiddle.net/2nv7A/8/

.button {
    ...
    height: 100px;
}

答案 2 :(得分:0)

试试这个:

a span {
    font-size:8px;
    text-transform:uppercase;
    display:block;
    text-align:center;
    line-height:0em;
    margin-top:-15px; // pulled up the text a little more
    margin-bottom:10px; // pushed down the margin at the bottom
    font-style:italic;
}

弄清楚这些,你会找到最适合你的

<强> DEMO HERE

答案 3 :(得分:0)

你可以使用overflow属性来显示文本切断,然后可以管理元素的高度。

 .button {
        position: relative;
        width: 62px;
  

溢出:可见;

    /*border: 1px solid black;*/
    border: 1px solid black;
    border-radius: 12px;
    /*border-radius: 7px;*/
    Outline: none;
    margin-left:2px;
    margin-bottom:7px;
    border-color:#ccc;
}

答案 4 :(得分:0)

如果你移除你的位置,减少你的行高,然后删除你的跨度高度(设置为0,防止它出现)然后它似乎工作正常。 Here

.button {
    width: 62px;
    /*border: 1px solid black;*/
    border: 1px solid black;
    border-radius: 12px;
    /*border-radius: 7px;*/
    Outline: none;
    margin-left:2px;
    margin-bottom:7px;
    border-color:#ccc;
}

a{
display:inline-block;
vertical-align:top;
text-align:center;
text-decoration:none;
font-weight:bold;
line-height:25px;
overflow:hidden;
    font-size:12px;
}


a span {font-size:8px;
text-transform:uppercase;
display:block;
text-align:center;
font-style:italic;
}

答案 5 :(得分:0)

剥离.a的line-height属性并增加a的line-height。跨度。

答案 6 :(得分:0)

您需要更改跨度的边距。使用这个CSS:

a span {font-size:8px;
    text-transform:uppercase;
    display:block;
    text-align:center;
    line-height:0em;
    margin-top:-10px;
    font-style:italic;
    margin-bottom:15px;
}

答案 7 :(得分:0)

这是因为您为display:block标记设置span,该标记应为display:inline-block;

a span {
  font-size:8px;
  text-transform:uppercase;
  display:inline-block; /* <---- here */
  text-align:center;
  line-height:0em;
  margin-top:-5px;
  font-style:italic;
}

Fiddle