我怎样才能使div跟随产品的主框

How can i make a div follow the main box of product

提问人:C3ddyyy 提问时间:11/1/2023 最后编辑:Minal ChauhanC3ddyyy 更新时间:11/1/2023 访问量:48

问:

enter image description here enter image description here

.product-row {
    margin: 0px 0px 0px 0px;
}

 .product-box {
    display: flex;
    flex-direction: column;
    width: 300px;
    padding: 15px;
   margin: 0px 26px;
   position: relative;
   overflow: hidden;
}

.p-img-container {
    width: 100%;
    height: 100%;
    display: flex;
    overflow: hidden;
}

.p-img a, .p-img {
    width: 100%;
    height: 100%;
    display: flex;
}

.p-img a img{
    width: 100%;
    height: 100%;
    object-position: center;
    object-fit: contain;
}

.label-sale {
    position: absolute;
    top: 10px;
    right: -30px;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 1px;
    padding: 5px 12px;
    transform: rotate(45deg);
    width: 110px;
}

.product-box .product-icon {
    position: absolute;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    list-style: none;
   top: 220px;
    left: 5px;
    visibility: hidden;
    opacity: 0;
    transform: translateY(40%);
    transition: opacity 0.5s, transform 0.5s;
}

.product-box:hover .product-icon {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}

.product-box:hover .product-icon,
.product-box:not(:hover) .product-icon {
    transition-delay: 0.1s;
}

.product-icon li a {
    padding-left: 50px;
    width: 46px;
    height: 46px;
    box-shadow: 0 15px 25px #00000014;
    border-radius: 50%;
    margin-left: 10px;
    margin-right: 10px;
    display: block;
    margin-bottom: 13px;
    transition: .3s;
    color: #000;
    background: #fff;
}

.product-icon li a:hover {
    color: white;
    background: #51adcd;
}

.product-icon .icon-1{
    position: absolute;
    top: 16px;
    left: 68px;
}

.product-icon .icon-2{
    position: absolute;
    top: 16px;
    left: 138px;
}

.product-icon .icon-3{
    position: absolute;
    top: 16px;
    left: 208px;
}

.product-title a {
    color: black;
    font-size: 16px;
    font-weight: inherit;
    text-decoration: none;
}

.product-title a:hover {
    color: #51adcd;
}

.product-price s {
    color: gray;
    font-weight: 700;
    font-size: 15px;
}
.product-price span {
    color: #51adcd;
    font-weight: 700;
    font-size: 15px;
}
<div class="product-box">
  <div class="product">
    <div class="img-product">
        <a href="">
            <img style="width: 100%;" src="homepagepicture/shoes1.webp" alt="">
        </a>

        <figure style="background: #e12c43; color: #ffffff;" class="label-sale">
            <span>-20%</span>
        </figure>

        <ul class="product-icon">
          <li class="add-cart mr-0">
            <a href="">
              <i class="fa-solid fa-bag-shopping icon-1"></i>
            </a>
          </li>
          <li class="view-product mr-0">
            <a href="">
              <i class="fa-solid fa-magnifying-glass icon-2"></i>
            </a>
          </li>
          <li class="add-favorite mr-0">
            <a href="">
              <i class="fa-regular fa-heart icon-3"></i>
            </a>
          </li>
        </ul>
    </div>
    <h4 class="product-title">
       <a href="">Aero Wave 19</a>
    </h4>
    <p class="product-price">
       <s class="">$156.00</s>
       <span class="">$124.95</span>
    </p>
  </div>  
</div>

我希望产品图标在响应时随产品框一起移动,但事实并非如此。我已经尝试使产品盒位置相对,但它没有随之移动,我的标签销售正在移动,但图片图标没有,这里有一些我需要修复的图像

HTML CSS 引导程序-4

评论


答:

0赞 Steve James 11/1/2023 #1

删除填充添加下面的样式

.product-icon li a {
/* remove commented padding */
/* padding-left: 50px; */
width: 46px;
height: 46px;
box-shadow: 0 15px 25px #00000014;
border-radius: 50%;
margin-left: 10px;
margin-right: 10px;
display: block;
margin-bottom: 13px;
transition: .3s;
color: #000;
background: #fff;
/* Add these styles */
text-align:center;line-height:46px;}

删除以下图标样式

.product-icon .icon-1{
position: absolute;
top: 16px;
left: 68px;}
.product-icon .icon-2{
position: absolute;
top: 16px;
left: 138px;}
.product-icon .icon-3{
position: absolute;
top: 16px;
left: 208px;}

.product-icon{padding-left:0;}

这是你想要的吗?

评论

0赞 Steve James 11/1/2023
在这种情况下,图标将适合产品包装盒内,产品包装盒的最小宽度可达 170px;在此之下,由于图标具有固定的宽度和边距,因此它将开箱即用。您可能需要使用低于该宽度的媒体查询