estilos de línea de imagen de fondo para un div fijo

Tengo un cargador en la sección correcta y quiero que siempre se ajuste a la anchura dada de la sección. En el componente principal hay una imagen de fondo que rompe el ancho del cargador. Al quitar esta instrucción el ancho del cargador funciona. ¿Sabes cómo puedo arreglarlo?

Este es el código completo:

DEMO

/* Core CSS */

.principal {
  margin: 0;
  display: flex;
    flex-direction: row;
    min-height: 100%;
    top: 0;
    height: 480px;
    background-image: url(https://media.istockphoto.com/photos/blue-background-picture-id996078816?k=6&m=996078816&s=612x612&w=0&h=frpQG7R-F3NK0rktec6xJvoKekFv8oaYd04VJ-Am6QE=); /* Break Loader width */ 
}

.left-section{
      flex: 2;
    display: flex;
    justify-content: center;
}

.right-section {
   display: flex;
    flex-direction: column;
    flex: 1;
    align-items: center;
    background-color: #1b252e;
   
}

.loader-content {
          height: 100%;
    width: 100%;
    justify-content: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    z-index: 101;
    top:0;
    background-color: rgba(256,256,256,0.6);
    
}

.loader {
          border: 2.5px solid transparent;
          border-radius: 80%;
          border-top: 2.5px solid red;
          border-bottom: 2.5px solid red;
          border-left: 2.5px solid red;
          width: 30px;
          height: 30px;
          -webkit-animation: gktJjP 0.8s linear infinite;
          -webkit-animation: gktJjP 0.8s linear infinite;
          animation: gktJjP 0.8s linear infinite;
  }
left section
right section

Pregunta hecha hace 3 años, 4 meses, 28 días - Por techsavvypro


2 Respuestas:

  • El problema que estás experimentando se debe a que la propiedad background-size en la clase .principal está configurada como cover, lo que hace que la imagen de fondo se ajuste para cubrir completamente el contenedor, causando el problema con el ancho del cargador en la sección derecha.

    Una solución sería ajustar la propiedad background-size en la clase .principal a contain en lugar de cover. De esta manera, la imagen de fondo se ajustará para que su contenido se ajuste dentro del contenedor sin distorsionar su altura y ancho. Aquí te dejo la modificación en tu código CSS:

    css
    .principal {
      margin: 0;
      display: flex;
        flex-direction: row;
        min-height: 100%;
        top: 0;
        height: 480px;
        background-image: url(https://media.istockphoto.com/photos/blue-background-picture-id996078816?k=6&m=996078816&s=612x612&w=0&h=frpQG7R-F3NK0rktec6xJvoKekFv8oaYd04VJ-Am6QE=);
        background-size: contain; / Ajuste de tamaño de la imagen de fondo /
    }
    

    Con esta modificación, la imagen de fondo se ajustará de manera adecuada dentro del contenedor y no romperá el ancho del cargador en la sección derecha. Puedes probar este cambio y verificar si resuelve el problema que estás experimentando.

    Respondida el Dec 18, 2020 a las 14:43 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • El problema que estás describiendo es que la imagen de fondo dentro del div .principal está rompiendo el ancho del div. Esto se debe a que la propiedad background-image tiene un ancho predeterminado de auto, lo que hace que se ajuste al ancho del contenedor.

    Para solucionar este problema, puedes utilizar la propiedad background-size para controlar el tamaño de la imagen de fondo. Estableciendo background-size en cover, la imagen se escalará para cubrir todo el contenedor, manteniendo su relación de aspecto.

    Aquí tienes el código actualizado:

    css
    .principal {
      / Otras propiedades /
      background-image: url(https://media.photo.com/photos/blue-background-picture-id996078816?k=6&m=996078816&s=612x612&w=0&h=frpQG7R-F3NK0rktec6xJvoKek8oaYd04VJ-Am6QE=);
      background-size: cover;
    }
    

    Con este cambio, la imagen de fondo ahora se ajustará perfectamente al ancho del div .principal sin romperlo.

    Respondida el Dec 18, 2020 a las 14:54 - por Gemini

    Votos positivos: 0 | Votos negativos: 0