cari

Rumah  >  Soal Jawab  >  teks badan

Div induk tidak boleh dipusatkan kerana jidar kiri div anak adalah negatif.

Saya mencipta div berikut, tetapi memandangkan saya menggunakan margin kiri negatif untuk mengimbangi ikon, saya tidak boleh memusatkan keseluruhan div. Kita boleh lari daripadanya pada desktop kerana anda tidak boleh dengan mudah memberitahu keseluruhan div dialihkan sedikit ke kiri, tetapi pada mudah alih bahagian kiri ikon bulat terputus. Bagaimanakah saya boleh memusatkan keseluruhan div?

.icon-text-box {
  border: 1px solid red;
}

.icon-box {
  background: #fff;
  border-radius: 33px;
  margin: 6rem auto;
  padding: 4rem 4rem 4rem 7rem;
  box-shadow: 0 3px 6px -2px rgb(0 0 0 / 20%), 0 6px 12px rgb(0 0 0 / 10%);
  position: relative;
  display: flex;
  align-self: center;
  max-width: 900px;
}

.icon-box p {
  font-size: 22px;
  margin-bottom: 0;
}

.icon-box-icon {
  position: absolute;
  left: -90px;
  overflow: hidden;
  display: flex;
  align-self: center;
  height: 177px;
}

.icon-box-icon img {
  border-radius: 40px;
}
<div class="container-fluid mw-972 icon-text-box">
  <div class="icon-box">
    <div class="icon-box-icon">
      <img src="https://www.freepnglogos.com/uploads/spotify-logo-png/spotify-simple-green-logo-icon-24.png" />
    </div>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
  </div>
</div>

P粉677573079P粉677573079376 hari yang lalu550

membalas semua(1)saya akan balas

  • P粉107991030

    P粉1079910302024-01-30 00:23:25

    Daripada auto jidar, anda boleh menggunakan idea yang berbeza untuk memusatkan sambil menambahkan beberapa jidar pada skrin kecil

    margin: 6rem max(90px,(100% - 900px)/2);

    Kod penuh:

    .icon-text-box {
      border: 1px solid red;
    }
    
    .icon-box {
      background: #fff;
      border-radius: 33px;
      margin: 6rem max(90px,(100% - 900px)/2);
      padding: 4rem 4rem 4rem 7rem;
      box-shadow: 0 3px 6px -2px rgb(0 0 0 / 20%), 0 6px 12px rgb(0 0 0 / 10%);
      position: relative;
      display: flex;
    }
    
    .icon-box p {
      font-size: 22px;
      margin-bottom: 0;
    }
    
    .icon-box-icon {
      position: absolute;
      left: -90px;
      top: 50%;
      transform: translateY(-50%);
      overflow: hidden;
      display: flex;
      height: 177px;
    }
    
    .icon-box-icon img {
      border-radius: 40px;
    }

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

    Jika anda mahukan margin di sebelah, juga kelihatan seperti ini:

    .icon-text-box {
      border: 1px solid red;
    }
    
    .icon-box {
      background: #fff;
      border-radius: 33px;
      margin: 6rem max(0px,(100% - 900px)/2) 6rem max(90px,(100% - 900px)/2);
      padding: 4rem 4rem 4rem 7rem;
      box-shadow: 0 3px 6px -2px rgb(0 0 0 / 20%), 0 6px 12px rgb(0 0 0 / 10%);
      position: relative;
      display: flex;
    }
    
    .icon-box p {
      font-size: 22px;
      margin-bottom: 0;
    }
    
    .icon-box-icon {
      position: absolute;
      left: -90px;
      top: 50%;
      transform: translateY(-50%);
      overflow: hidden;
      display: flex;
      height: 177px;
    }
    
    .icon-box-icon img {
      border-radius: 40px;
    }

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

    balas
    0
  • Batalbalas