提问人:ygnsl 提问时间:11/16/2023 更新时间:11/17/2023 访问量:35
如何防止底层文本开始换行时产品图片高度缩小?
How can i prevent product image height from shrinking when the underlying text starts wrapping?
问:
当屏幕高度发生变化时,缩略图图像的高度在整个滑块中不一致。每当文本开始换行时,缩略图的高度就会开始缩小以适合容器内的文本。图像必须保持响应,并且没有固定的高度设置。我正在使用 swiper-js 来创建我的滑块。
这是我现在拥有的代码,这是我尝试过的一切
HTML格式:
<div class="swiper-slide" data-product="<?=$product->get_id();?>">
<a href="<?=get_permalink($product_id)?>">
<div class="series-thumbnail">
<img src="<?=$thumbnail_src[0]?>" alt="<?=$alt?>">
<button class="series-quick-view"><span><?=$settings['quick-view-text']?></span></button>
</div>
<div class="series-meta">
<span class="jiv-product-name"><?=$product->get_title();?></span>
<span class="jiv-product-price"><?=$product->get_price_html();?></span>
</div>
</a>
</div>
CSS:
/* SERIES */
.jiv-series .swiper-slide{
height: auto;
}
.jiv-series .swiper-slide a{
display: flex;
flex-direction: column;
align-items: center;
padding: 10px;
transition: .3s;
height: 100%;
text-align: center;
}
.jiv-series .swiper-slide:hover a{
border: 1px solid #000;
}
.series-thumbnail, .series-thumbnail img{
height: 100%;
object-fit: cover;
position: relative;
}
.series-thumbnail .series-quick-view{
position: absolute;
bottom: 0;
left: 0;
padding: 20px;
background: unset;
border: unset;
text-align: center;
width: 100%;
font-size: 12.274px;
display: block;
}
.series-thumbnail .series-quick-view span{
opacity: 0;
}
.jiv-series .swiper-slide:hover a .series-thumbnail .series-quick-view span{
width: 100%;
display: block;
padding: 10px;
background: #ffffff8a;
transition: .3s;
border: 1px solid #000;
opacity: 1;
}
答:
-1赞
A.J
11/16/2023
#1
如果需要为 定义特定的高度和宽度尺寸,可以使用以下 CSS:.series-thumbnail
.series-thumbnail {
width: 240px;
height: 200px;
}
0赞
ygnsl
11/17/2023
#2
因此,我通过将图像上的高度替换为纵横比来解决这个问题。
工作 css 如下所示(仅我所做的更改):
老:
.series-thumbnail, .series-thumbnail img{
object-fit: cover;
position: relative;
height: 100%;
}
新增功能:
.series-thumbnail, .series-thumbnail img{
object-fit: cover;
position: relative;
}
.series-thumbnail img{
aspect-ratio: 2 / 3;
}
评论