En la documentación de consultas de medios de Bootstrap 3 dice:
Utilizamos las siguientes consultas de medios en nuestros archivos Less para crear los puntos de interrupción clave en nuestro sistema de cuadrícula.
Dispositivos extra pequeños (teléfonos, menos de 768 px): no hay consulta de medios ya que este es el valor predeterminado en Bootstrap
Pequeños dispositivos (tabletas, 768 px y más):
@media (min-width: @screen-sm-min) { ... }
Dispositivos medianos (computadoras de escritorio, 992 px y más):
@media (min-width: @screen-md-min) { ... }
Dispositivos grandes (escritorios grandes, 1200 px y más):
@media (min-width: @screen-lg-min) { ... }
Se supone que debemos ser capaces de utilizar los @screen-sm
, @screen-md
y @screen-lg
nombres en nuestras preguntas de los medios, así? Porque no me funciona. Tengo que usar medidas de píxeles como @media (min-width: 768px) {...}
antes de que funcione. ¿Estoy haciendo algo mal?
Además, ¿la referencia a 480px para dispositivos extra pequeños es un error tipográfico? ¿No debería eso decir hasta 767px? ( desde que se eliminó de la documentación )
Respuestas:
Bootstrap 4 Consultas de medios
Bootstrap 4 proporciona CSS de origen en Sass que puede incluir a través de Sass Mixins:
Bootstrap 3 Consultas de medios
Bootstrap 2.3.2 Consultas de medios
Recurso de: https://scotch.io/quick-tips/default-sizes-for-twitter-bootstraps-media-queries
fuente
Bootstrap no documenta muy bien las consultas de medios. Esas variables de
@screen-sm
,@screen-md
,@screen-lg
se hace referencia en realidad a las variables menos y CSS no es simple.Cuando personaliza Bootstrap, puede cambiar los puntos de interrupción de la consulta de medios y cuando compila las variables @ screen-xx se cambian a cualquier ancho de píxel que haya definido como screen-xx. Así es como un marco como este puede codificarse una vez y luego ser personalizado por el usuario final para satisfacer sus necesidades.
Una pregunta similar aquí que podría proporcionar más claridad: consultas de medios de Bootstrap 3.0
En su CSS, aún tendrá que usar consultas de medios tradicionales para anular o agregar a lo que está haciendo Bootstrap.
En lo que respecta a su segunda pregunta, eso no es un error tipográfico. Una vez que la pantalla cae por debajo de 768px, el marco se vuelve completamente fluido y cambia de tamaño a cualquier ancho de dispositivo, eliminando la necesidad de puntos de interrupción. El punto de interrupción a 480px existe porque hay cambios específicos que ocurren en el diseño para la optimización móvil.
Para ver esto en acción, vaya a este ejemplo en su sitio ( http://getbootstrap.com/examples/navbar-fixed-top/ ), y cambie el tamaño de su ventana para ver cómo trata el diseño después de 768px.
fuente
Este problema se ha discutido en https://github.com/twbs/bootstrap/issues/10203 Por ahora, no hay ningún plan para cambiar Grid por razones de compatibilidad.
Puede obtener Bootstrap de esta bifurcación, rama
hs
: https://github.com/antespi/bootstrap/tree/hsEsta rama le proporciona un punto de interrupción adicional a 480 px, por lo que debe:
Diseñar dispositivos móviles primero es la clave para entender Bootstrap 3. Este es el cambio principal de BootStrap 2.x. Como plantilla de regla, puede seguir esto (en MENOS):
fuente
@screen-hs-min:@screen-xs;
. ¿Por qué no usar@screen-xs
directamente aquí?min-width: @screen-hs-min
, si necesita una regla estra para SM, anotarámin-width: @screen-sm-min
, y así sucesivamente. Esta bifurcación se usa para agregar un nuevo punto de interrupción a 480px. Luego, el tamaño móvil es inferior a 480 px y aparece un nuevo tamaño (HS) entre 480 px y 768 pxscreen-hs-min
es una nueva regla entrescreen-xs-min
yscreen-sm-min
Sé que esto es un poco viejo, pero pensé que contribuiría. Basándome en la respuesta de @Sophy, esto es lo que hice para agregar un punto de interrupción .xxs. No me he ocupado de las clases visible-inline, table.visible, etc.
fuente
.visible-xs-inline, .visible-xs-inline-block
cada vez que anule.visible-xs
!La referencia a 480px ha sido eliminada. En cambio dice:
No hay un punto de interrupción por debajo de 768 px en Bootstrap 3.
Si desea usar el
@screen-sm-min
y otros mixins, entonces necesita compilar con MENOS, consulte http://getbootstrap.com/css/#grid-lessAquí hay un tutorial sobre cómo usar Bootstrap 3 y MENOS: http://www.helloerik.com/bootstrap-3-less-workflow-tutorial
fuente
Debería poder usar esos puntos de interrupción si usa http://lesscss.org/ para construir su CSS.
De https://getbootstrap.com/docs/3.4/css/#grid-media-queries
De hecho,
@screen-sm-min
es una variable que se reemplaza por el valor especificado en_variable
cuando se construye con Less. Si no usa Less, puede reemplazar esta variable por el valor:Bootstrap 3 oficialmente admite Sass: https://github.com/twbs/bootstrap-sass . Si está utilizando Sass (y debería hacerlo), la sintaxis es un poco diferente.
fuente
Estos son los selectores utilizados en Bootstrap 4. No hay una configuración "más baja" en BS4 porque "extra pequeño" es el valor predeterminado. Es decir, primero codificaría el tamaño XS y luego tendría que anular estos medios.
fuente
cuando uso @media (ancho máximo: 768 px) mi diseño se rompe en 768 px. Pero está bien en 767px y también en 769px. Por lo tanto, creo que será 767px como ancho máximo para apuntar a dispositivos pequeños.
fuente
para bootstrap 3 tengo el siguiente código en mi componente de barra de navegación
entonces puedes usar algo como
Esto utiliza cualquier valor al que tenga configuradas las variables.
Escapar le permite usar cualquier cadena arbitraria como propiedad o valor variable. Cualquier cosa dentro de ~ "cualquier cosa" o ~ 'cualquier cosa' se usa tal cual sin cambios, excepto la interpolación.
http://lesscss.org
fuente
fuente