我有一行元素,我想使用display来设置它们的样式:table-cell;使文本在中间垂直放置。有时行会有一个活动状态,我需要在活动元素的顶部添加一个水平条。此栏需要至少从行中删除一个像素。我使用了:之前的伪元素,它在Chrome中效果很好,但在Firefox中却没有,因为显示:table-cell;。
这有什么解决方案吗?最好是没有javascript的。
适用于Chrome,而不适用于Firefox:http://jsfiddle.net/Danny_Joris/CYwUZ/
<div id="wrapper">
<div class="col1">col1 col1 col1</div>
<div class="col2">col2 col2 col2</div>
<div class="col3">col3 col3 col3</div>
</div>
#wrapper {
margin: 40px 0 0 0;
position: relative;
background: yellow;
display: inline-block;
}
#wrapper > div {
width: 33%;
display: table-cell;
vertical-align: middle;
height: 75px;
width: 60px;
border: 1px solid #ccc;
text-align: center;
position: relative;
}
.col2:before {
content: '';
position: absolute;
top: -7px;
height: 5px;
background: lightblue;
left: -1px;
right: -1px;
z-index: 50;
}