Это потому, что вы используете background-image для элемента <li>
, в отличие от самого элемента <img>
. Поскольку это родительский элемент изображения, фон никогда не будет отображаться над самим изображением.
Если вы хотите сохранить фоновое изображение на родительском элементе, вы можете просто добавить правило opacity:0;
для дочернего элемента <img>
при наведении курсора.
, например
.product.type-product:hover img {
opacity:0;
}
Устанавливает непрозрачность изображения на 0 при наведении указателя мыши на родительский элемент <li>
.
Другой вариант - добавить контейнер к элементу <img>
и использовать селектор :before
для этого элемента контейнера с дополнительным изображением в качестве фонового изображения.
Это будет выглядеть примерно так:
ul.products li.product img {
position:relative;
}
ul.products li.product .product-image-container:before {
content:"";
display:none;
background: url(https://proteinandpantry.com/wp-content/uploads/2018/09/BeefJerkySaltAndPepper-324x324.jpg) no-repeat;
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
z-index:1;
}
А затем покажите предыдущее при наведении на родительский элемент:
.product.type-product:hover .product-image-container:before {
display:block;
}
См. Пример этого здесь: http://jsfiddle.net/g5u4Lbxn/
Большинство браузеров не поддерживают селектор :before
на изображениях, поэтому вам нужно добавить элемент контейнера для изображения
С элементом контейнера изображения HTML для этого конкретного элемента <li>
должен выглядеть следующим образом:
<li class="post-1394 product type-product status-publish has-post-thumbnail product_cat-protein first instock shipping-taxable purchasable product-type-simple">
<h2 class="woocommerce-loop-product__title">Spicy Teriyaki Turkey Jerky</h2>
<div class="product-image-container">
<img width="324" height="324" src="https://proteinandpantry.com/wp-content/uploads/2018/09/TurkeyJerky-324x324.jpg" class="attachment-woocommerce_thumbnail size-woocommerce_thumbnail wp-post-image">
</div>
<div class="star-rating">
<span style="width:100%">Rated <strong class="rating">5.00</strong> out of 5</span>
</div>
<span class="price">
<span class="woocommerce-Price-amount amount"><span class="woocommerce-Price-currencySymbol">£</span>2.50</span>
</span>
<a href="/shopnew/?add-to-cart=1394" data-quantity="1" class="button product_type_simple add_to_cart_button ajax_add_to_cart" data-product_id="1394" data-product_sku="" aria-label="Add “Spicy Teriyaki Turkey Jerky” to your basket" rel="nofollow">Add To Box</a>
<a class="xoo-qv-button" qv-id="1394"><span class="xoo-qv-btn-icon xooqv-search xoo-qv"></span>Learn More</a>
</li>