El origen de "móvil primero"
La idea de "móvil primero" en lo que respecta al diseño receptivo proviene de una época en la que los navegadores para dispositivos móviles eran mucho menos capaces de lo que encontraría en un dispositivo de escritorio. Muchos de ellos no admitían consultas de medios en absoluto, por lo que la idea de construir un diseño de escritorio sofisticado y luego pegarse en estilos usando consultas de medios para una vista estrecha cae de bruces.
La ausencia de soporte para consultas de medios es, de hecho, la primera consulta de medios.
- Bryan Rieger
¿El móvil primero sigue siendo relevante?
A pesar de que los navegadores para dispositivos móviles han alcanzado a sus homólogos de escritorio, "móvil primero" sigue siendo la forma más lógica de escribir sus estilos.
Prefiero pensar en términos de "evitar deshacer declaraciones de estilo anteriores". Un enfoque aditivo, en lugar de escribir estilos y luego anularlos más tarde, casi siempre conducirá a una hoja de estilo más compacta. Los estilos apropiados para la mayoría / todos los dispositivos deben encontrarse fuera de las consultas de medios, mientras que los estilos que solo son relevantes para una ventana gráfica específica deben estar detrás de una consulta de medios.
Compare un enfoque de "escritorio primero":
.column {
float: left;
width: 50%;
}
@media all and (max-width: 50em) {
.column {
float: none;
width: auto;
}
}
Para un enfoque "móvil primero":
@media all and (min-width: 50em) {
.column {
float: left;
width: 50%;
}
}
Los resultados son los mismos, pero el último es más compacto. Ejemplos de estilos copiados descaradamente de los 7 hábitos de consultas de medios altamente efectivos de Brad Frost .
Hay algunas raras excepciones en las que "escritorio primero" es más apropiado que al revés. El más notable de estos es cuando estás haciendo cosas como tablas receptivas. Las vistas más anchas querrán los estilos predeterminados para las tablas, pero una vista angosta querrá anular todo eso para que los contenidos se puedan apilar verticalmente.
No rompas tus hojas de estilo
Una cosa que absolutamente no debe hacer es dividir sus estilos receptivos en archivos CSS individuales y usar el atributo de medios en el elemento de enlace. Esto tiene la consecuencia indeseable de que el UA descargue todas las hojas de estilo vinculadas (es decir, no hay mejora de velocidad para hacerlo).
<!-- this is bad, don't do this -->
<link rel="stylesheet" media="(max-width: 800px)" href="example.css" />
Entonces, el código debe ser móvil primero, pero ¿qué pasa con el enfoque del diseño?
Soy de la opinión de que no importa. Deben realizarse diseños para todas las ventanas gráficas relevantes para el diseño (esto puede implicar tan solo 2 o hasta 5 una vez que tenga en cuenta los puntos de interrupción menores que pueda necesitar), el orden no importa al final. Muchos diseñadores carecen de la disciplina para comenzar con un diseño de escritorio y encuentran que comenzar desde un diseño móvil es más fácil.
Si desea comenzar desde un diseño de escritorio, debe evitar la tentación de llenar todo ese glorioso espacio en blanco con el desorden que no mejora el contenido de esa página. ¿Realmente necesitas esa foto de 800x600 de una mujer sonriente sosteniendo un teléfono? Solo le está costando dinero extra al usuario móvil descargar descargas inútiles, y es solo una distracción visual para que un usuario de escritorio se salte.