Ahora estoy leyendo documentación en Twitter Bootstrap 3, e intenté seguir el orden de las columnas como se muestra en esta página, pero golpeé la pared. No entiendo por qué funciona ese código ni cómo especificar correctamente la configuración. Lo que quiero mostrar es una cuadrícula, que consta de longitud 5, y la otra longitud 5, y finalmente una cuadrícula de longitud 2.
Entonces el mío es algo como esto:
[5] [5] [2]
Y lo que quiero lograr es que, cuando se ve en el escritorio, se muestra el diseño anterior, pero cuando se ve en el móvil, quiero mostrar primero el segundo objeto de longitud 5, luego el primer objeto de longitud 5 y finalmente el objeto de longitud 2 verticalmente Me gusta esto:
[5] (second)
[5] (first)
[2]
Si bien intenté seguir el paso explicado en la documentación anterior, obtuve el primer objeto de longitud 5 sobre el segundo a pesar de estar en plataformas móviles, que como dije debería mostrar el segundo objeto de longitud 5 en la parte superior. En otras palabras, obtuve esto:
[5] (first)
[5] (second)
[2]
Entonces, ¿cómo puedo colocar correctamente el segundo sobre el primero? O como uso el mismo objeto de longitud, ¿podría no funcionar el orden de columnas?
Aquí está mi código para su información:
<div class='row'>
<div class='col-lg-5 col-lg-push-5'></div>
<div class='col-lg-5 col-lg-pull-5'></div>
<div class='col-lg-2'></div>
</div>
Además, la documentación no aclara qué pull
o qué push
significa. Entonces, ¿me estoy perdiendo algo?
Gracias.
fuente
Respuestas:
Esta respuesta consta de tres partes, consulte a continuación el lanzamiento oficial (v3 y v4)
Ni siquiera pude encontrar las clases col-lg-push-x o pull en los archivos originales para RC1 que descargué, así que revise su archivo bootstrap.css. con suerte, esto es algo que resolverán en RC2.
de todos modos, existían las clases col-push- * y pull y esto se adaptará a sus necesidades. Aquí hay una demostración
EDITAR: ABAJO ES LA RESPUESTA PARA LA PUBLICACIÓN OFICIAL v3.0
También vea esta publicación de blog sobre el tema
col-vp-push-x
= empuje la columna hacia la derecha x número de columnas, comenzando desde donde la columna normalmente representaría ->position: relative
, en un puerto de vista vp o más grande.col-vp-pull-x
= jale la columna hacia la izquierda por x número de columnas, comenzando desde donde la columna normalmente representaría ->position: relative
, en un puerto de vista vp o más grande.vp = xs, sm, md o lg
x = 1 a 12
Creo que lo que confunde a la mayoría de las personas es que necesita cambiar el orden de las columnas en su marcado HTML (en el ejemplo a continuación, B viene antes que A) , y que solo empuja o tira de los puertos de vista que son mayor o igual que lo especificado. es decir
col-sm-push-5
, solo empujará 5 columnas ensm
los puertos de vista o más. Esto se debe a que Bootstrap es un marco "móvil primero", por lo que su HTML debe reflejar la versión móvil de su sitio. Empujar y tirar se realizan en las pantallas más grandes.MANIFESTACIÓN
View-port> = sm
View-port <sm
EDITAR: ABAJO ES LA RESPUESTA PARA v4.0
Con v4 viene flexbox y otros cambios en el sistema de cuadrícula y las clases push \ pull se han eliminado a favor del uso de pedidos de flexbox.
.order-*
clases para controlar el orden visual (donde * = 1 a 12).order-md-*
.order-first
(-1) y.order-last
(13) disponiblesfuente
col-lg-push
como usted dijo. Muchas gracias.Pull "tira" del div hacia la izquierda del navegador y Push "empuja" el div hacia la izquierda del navegador.
Me gusta:
Básicamente, en un diseño de 3 columnas de cualquier página web, el "Cuerpo principal" aparece en el "Centro" y en la vista "Móvil", el "Cuerpo principal" aparece en la "Parte superior" de la página. Esto es principalmente deseado por todos con un diseño de 3 columnas.
Puede verlo aquí: http://jsfiddle.net/DrGeneral/BxaNN/1/
Espero eso ayude
fuente
col-lg-push-4
cambios en la columna Contenido de las columnas 1-4 a 5-8 'empujando' 4 columnas. Del mismo modo,col-lg-pull-4
"tira" de la columna de la barra lateral de 5-8 a 1-4.Concepto erróneo El concepto erróneo común con el orden de las columnas es que debería (o podría) empujar y tirar de los dispositivos móviles, y que las vistas de escritorio deberían mostrarse en el orden natural del marcado. Esto está mal.
Reality Bootstrap es un primer framework móvil. Esto significa que el orden de las columnas en su marcado HTML debe representar el orden en que desea que se muestren en los dispositivos móviles. Esto significa que empujar y tirar se realiza en las vistas de escritorio más grandes. no en dispositivos móviles ver ..
fuente
Sentí que agregaría mis $ 0.2 a esas 2 buenas respuestas. Tuve un caso cuando tuve que mover la última columna hasta la parte superior en una situación de 3 columnas.
[A B C]
a
[C]
[UNA]
[SI]
La clase de Boostrap
.col-xx-push-X
no hace nada másleft: XX%;
que empujar una columna hacia la derecha, por lo que todo lo que tiene que hacer para empujar una columna hacia la derecha es agregar el número de pseudo columnas hacia la izquierda.En este caso:
dos columnas (
col-md-5
ycol-md-3
) van a la izquierda, cada una con el valor de la que va a la derecha;one (
col-md-4
) va hacia la derecha por la suma de los dos primeros hacia la izquierda (5 + 3 = 8);fuente
Si necesita organizar los datos en columnas de 1/2/4 dependiendo del tamaño de la ventana gráfica, entonces empujar y tirar puede no ser una opción. No importa cómo pidas tus artículos en primer lugar, uno de los tamaños puede darte un pedido incorrecto.
Una solución en este caso es usar filas y columnas anidadas sin ninguna clase de inserción o extracción.
Ejemplo
En XS quieres ...
En SM quieres ...
En MD y superior quieres ...
Solución
Utilice elementos secundarios anidados de dos columnas en un elemento primario de dos columnas circundante:
Aquí hay un fragmento de trabajo:
Otra belleza de esta solución es que los elementos aparecen en el código en su orden natural (A, B, C, ... H) y no tienen que ser barajados, lo cual es bueno para la generación de CMS.
fuente