转换不适用于FireFox

时间:2014-08-14 11:31:04

标签: css

我在图像上实现了这种悬停效果,它可以正常工作。除了FireFox。 粉红色的背景有效,但方块没有过渡。我尝试使用-moz-transform,没有工作。我试着改变所有'改造,仍然没有工作。

有人可以帮助我吗?

这是小提琴:

HTML:

    <div id="img">
        <div id="overlay">
            <div class="expand">
        </div>
    </div>
</div>

CSS:

#img {
    height: 150px;
    width: 350px;
    background: url('http://placehold.it/350x150');
}

#img #overlay {
    background: rgba(229, 66, 147, 0);
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    height: 150px;
    width: 350px;
}

#img #overlay:hover {
    display: block;
    position: absolute;
    background: rgba(229, 66, 147, 0.6);
    z-index: 20;
    overflow: hidden;
    height: 150px;
    width: 350px;
}
.expand {
    display: inline-block;
    margin: auto;
    margin-left: 39%;
    margin-top: 12%;
    z-index: 100;
    width: 60px;
    height: 60px;
    border: solid 5px #fff;
    color: #fff;
    line-height: 50px;
    font-weight: 700;
    font-size: 30px;
    transform: scale(0);
    opacity: 0;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}

#img #overlay:hover .expand {
    transform: scale(1);
    opacity: 1;
}

http://jsfiddle.net/9qeywb75/

1 个答案:

答案 0 :(得分:1)

Firefox中存在一个错误 - Bug 625289。当你改变元素需要重建时,FF中的转换似乎不起作用 - 例如它的位置发生了变化。

要解决此问题,只需将position: absolute;overflow: hidden;#img #overlay:hover移至#img #overlay,即可在FF中使用!