Я сделал этот эффект наведения на изображение, и он работает, и все. За исключением 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/

css
1
Arjan10 14 Авг 2014 в 15:31
Я не знаю, как это повлияет, но когда вы перемещаете position: absolute; и overflow: hidden; из #img #overlay:hover в #img #overlay, все в FireFox работает нормально!
 – 
norin89
14 Авг 2014 в 16:53
Сработало нормально! Большое спасибо.
 – 
Arjan10
14 Авг 2014 в 16:58
Я нашел причину - в FF есть ошибка - я добавил ответ на ваш вопрос с кратким описанием - ссылка
 – 
norin89
14 Авг 2014 в 17:00
И дайте, пожалуйста, ответ на вопрос, если мой ответ вас полностью удовлетворил :)
 – 
norin89
14 Авг 2014 в 17:07

1 ответ

Лучший ответ

В Firefox есть ошибка - Ошибка 625289. Кажется, что переходы в FF не работают, когда вы меняете элемент, который нужно реконструировать - например, его положение изменено.

Чтобы исправить это, просто переместите position: absolute; и overflow: hidden; из #img #overlay:hover в #img #overlay, и это будет работать в FF!

1
norin89 14 Авг 2014 в 16:59