在一个div中安装3个跨度,适用于Chrome但不适用于Firefox

时间:2014-08-05 16:31:43

标签: html5 css3 google-chrome firefox

所以我有一些问题,一些CSS样式在Chrome中有效,但在FireFox中没有。

这是一个小提琴:http://jsfiddle.net/N6vw4/

HTML

<div class="inner frozenColumn head" column-id="a149a4ba-c0a6-4d7f-a420-b55b65ef3003" draggable="true">
    <span>Cluster1</span>
    <span class="resizeColumn">&nbsp;</span>
    <span class="sort arrow-up"></span>
</div>

CSS

div.head {
    background-color: #efefef;
    border-top: 1px solid #666;
    padding-right: 0;
    padding-top: 0;
    text-overflow: clip;
}
div.frozenColumn {
    border-right: 1px double #666;
    overflow: hidden;
    white-space: nowrap;
    width: 200px;
}
div.inner {
    border-bottom: 1px solid #666;
    border-left: 1px solid #666;
    height: 28px;
}
div {
    line-height: 28px;
}

.resizeColumn {
    background-color: gray;
    float: right;
    height: 100%;
    margin: 0;
    opacity: 0.1;
    padding: 0;
    top: 0;
    width: 3px;
}


.arrow-up {
    border-bottom: 5px solid gray;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    float: right;
    height: 0;
    opacity: 0.1;
    width: 0;
}

Chrome中的一个显然是按预期显示箭头和重新调整大小的列,但FireFox没有。

知道为什么浏览器之间存在差异吗?

1 个答案:

答案 0 :(得分:1)

删除 white-space:nowrap; css构成你的代码,你可以在firefox中看到箭头和第二个跨度。

更新jsfiddle

div.head {
    background-color: #efefef;
    border-top: 1px solid #666;
    padding-right: 0;
    padding-top: 0;
    text-overflow: clip;
}
div.frozenColumn {
    border-right: 1px double #666;
    overflow: hidden;
    width: 200px;
}
div.inner {
    border-bottom: 1px solid #666;
    border-left: 1px solid #666;
    height: 28px;
}
div {
    line-height: 28px;
}

.resizeColumn {
    background-color: gray;
    float: right;
    height: 100%;
    margin: 0;
    opacity: 0.1;
    padding: 0;
    top: 0;
    width: 3px;
}


.arrow-up {
    border-bottom: 5px solid gray;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    float: right;
    height: 0;
    opacity: 0.1;
    width: 0;
}