es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Carrusel de múltiples elementos de Bootstrap 3

Estoy tratando de hacer que funcione un slider con bootstrap 3 carousel, basado en algunas respuestas que encontré aquí. Tengo un problema con el texto, porque todos los ejemplos que encontré son solo con imágenes, mientras que necesitaría un div con imagen y texto.

El problema es que cuando el texto fluye, resulta en un efecto borroso muy granulado. Aquí hay un ejemplo para entender el código utilizado y el efecto en el texto.

JS:

// Instantiate the Bootstrap carousel
$('.multi-item-carousel').carousel({
  interval: false
});

// para cada diapositiva en la diapositiva, copie el elemento de la siguiente diapositiva en la diapositiva.
// Haga lo mismo para el siguiente elemento siguiente.
$('.multi-item-carousel .item').each(function(){
  var next = $(this).next();
  if (!next.length) {
    next = $(this).siblings(':first');
  }
  next.children(':first-child').clone().appendTo($(this));

  if (next.next().length>0) {
    next.next().children(':first-child').clone().appendTo($(this));
  } else {
    $(this).siblings(':first').children(':first-child').clone().appendTo($(this));
  }
});

CSS:

.multi-item-carousel{
  .carousel-inner{
    > .item{
      transition: 500ms ease-in-out left;
    }
    .active{
      &.left{
        left:-33%;
      }
      &.right{
        left:33%;
      }
    }
    .next{
      left: 33%;
    }
    .prev{
      left: -33%;
    }
    @media all and (transform-3d), (-webkit-transform-3d) {
      > .item{
        // use your favourite prefixer here
        transition: 500ms ease-in-out left;
        transition: 500ms ease-in-out all;
        backface-visibility: visible;
        transform: none!important;
      }
    }
  }
  .carouse-control{
    &.left, &.right{
      background-image: none;
    }
  }
}

Esto no relacionado con la apariencia:

Cuerpo{
fondo: #fff;
color: #000;
tamaño de fuente: 26px;
}
h1{
color: blanco;
tamaño de fuente: 2,25 em;
alinear el texto: center;
margen superior: 1em;
margen inferior: 2em;
sombra de texto: 0px 2px 0px rgba(0, 0, 0, 1);
}

¿Hay alguna manera de hacer que el texto fluya sin ser borroso y granulado? Gracias.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Una posible solución para hacer que el texto del carrusel de Bootstrap 3 se deslice sin verse granulado o borroso es utilizar CSS para crear una superposición de degradado que gradualmente desvanece el texto a medida que llega al fondo de la diapositiva. Esto se puede lograr mediante la adición del siguiente código CSS a la clase .carousel-caption:

    .carousel-caption {
      background-image: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,1));
      bottom: 0;
      left: 0;
      padding: 10px 15px;
      position: absolute;
      width: 100%;
    }
    

    Este código crea un degradado que comienza transparente en la parte superior de la diapositiva y gradualmente se vuelve más opaco a medida que se acerca al fondo. Las propiedades bottom y left posicionan la leyenda en la esquina inferior izquierda de la diapositiva, y la propiedad padding añade un espacio alrededor del texto para evitar que toque la superposición de degradado.

    Al aplicar este CSS a la clase .carousel-caption, el texto en cada diapositiva debería ser mucho más legible y fácil de leer que antes. Sin embargo, vale la pena señalar que esta solución puede no funcionar perfectamente para todas las situaciones, ya que la visibilidad del texto todavía puede verse afectada por el color y el brillo de la imagen de fondo. Si ese fuera el caso, experimentar con diferentes colores de degradado o agregar un color de fondo semitransparente a la clase .carousel-caption puede ayudar a mejorar aún más la visibilidad.

Comments are closed.