3

我想用文本垂直集中“红色”方块。我在 div 中有一些内部,不知道这是否会影响某些东西......下面的 css 有效,但似乎每个标签<a>都有太多内容。vertical-align: middle;有人知道如何使用相同的 html 树使这更简单吗?谢谢!

html:

<div>
    <a href="#"></a>
</div>
<span>Testing...</span>

CSS:

div{
    display: inline-block;
    margin: 0 3px;
    vertical-align: middle;
}

a{
    width: 5px;
    height: 5px;
    background-color: red;
    display: block;
    vertical-align: middle;

}

span{
    font-size: 26px;
    vertical-align: middle;
}

http://jsfiddle.net/sGgZb/6/

4

3 回答 3

3

只有跨度需要垂直对齐规则。

span{
    font-size: 26px;
    vertical-align: middle;
}

jsFiddle 示例

于 2013-05-08T20:06:44.053 回答
0

如果您想要完成的只是不使用尽可能多的垂直对齐,那么我在没有容器 div 并放置inline-blocka 本身的情况下实现了相同的效果。

http://jsfiddle.net/sGgZb/19/

于 2013-05-08T20:20:05.787 回答
0

使用伪元素,因为这是纯粹的风格增强。不需要额外的标记,你的 CSS 更干净。

HTML:

<span>Testing...</span>

CSS:

span {
    font-size: 26px;
    padding: 0 0 0 10px;
}
span::before {
    content: " ";
    width: 5px;
    height: 5px;
    display: inline-block;
    background: #f00;
    vertical-align: middle;
}

jsFiddle 示例

于 2013-05-08T20:12:50.220 回答