1️⃣ No agrupes selectores en la misma línea, separa.
2️⃣ Aunque tengas canal alfa, usa RGB() y no RGBA(). Incluso ya puedes usar hexadecimal con canal alfa.
3️⃣ Si tienes propiedades con valores múltiples, separa en múltiples líneas.
4️⃣ Usa variables CSS. Se colocan al inicio, separados por una línea en blanco del resto de props. ¡Y tienen ámbitos locales!
5️⃣ Se pueden guardar todo tipo de datos: medidas, gradientes, colores, funciones css, keywords, etc...
6️⃣ Con `var()` puedes usarlas y añadir un fallback.
7️⃣ Cuidado al usar @Imports (son peticiones adicionales desde el cliente). Considera:
- Usar <link>
- Añadir resource hints para precargar
- Usar `@font-face` para tipografías
8️⃣ ¡Ojo, que ya tenemos capas en CSS!
9️⃣ Existen múltiples criterios de ordenación de propiedades: alfabéticos, por longitud, etc...
Mi preferida: Separar por tipo/categoría. Es fácil de mantener e intuitivo para predecir si existe algo.
1️⃣0️⃣ Aprende a dominar la especificidad CSS. Cuando usas `!important` frecuentemente es porque no conoces la especificidad.
Tómate un tiempo en aprender como funciona. Si no es suficiente para ti, investiga BEM, CSS Modules o Shadow DOM (WebComponents) y metodologías CSS.
1️⃣1️⃣ El nesting (anidar CSS) es una característica genial para mantener código CSS y tenerlo mucho más organizado.
Se basa en colocar selectores dentro de otros. Aún no está disponible en CSS vanilla (lo estará) pero se puede usar con:
- Sass
- PostCSS
- ParcelCSS
1️⃣2️⃣ Quizás el más importante de todos: Usa Stylelint (linter CSS). Al igual que utilizas ESLint para Javascript, Stylelint te revisa el código CSS y te aconseja como solucionar problemas, formas de corregir errores y mejorar tu estilo de código CSS.
Si no la has visto, ALTO. No considero spoiler lo que pongo aquí (sólo detalles de la pantalla), pero quizás prefieras no saber nada de nada hasta que hayas visto la serie (temporada 4, capítulo 6).
🧵🔽
La serie está ambientada en 1986. En una pantalla de una Amiga (1985) nos encontramos la siguiente interfaz. Parece una interfaz del estilo Workbench, pero en un monitor de fósforo verde.
Arriba aparece versión 1.0, aunque a la derecha podemos ver Workbench 1.3.
Aparece una pantalla con código (oh-oh), veamos de que se trata. A simple vista, parece Java (1995), C# (2000) o similar, con referencias a un cliente de SQL (1974) o a ¿LINQ de C#? (2007)
Más abajo, referencias entre otras cosas, a TeX ¿LaTeX? (1984) y Turbo C++ (1990).
En Javascript, cualquier array tiene una serie de métodos que hace muy fácil trabajar con ellos. Además, forma parte de las bases de la programación funcional.
¡Te explico cuales son y como funcionan!
🧵🔽
📒Antes de empezar, imaginemos que tenemos una estructura de datos basada en un array. Cada elemento es un objeto con sus propiedades.
Para simplificar, en los siguientes ejemplos cada objeto (ítem) se representa con un Sticker de ManzDev, Batmanz y San @goncy incluidos.
📚Las "array functions" son métodos que se ejecutan sobre un array, y a los que les pasamos una función que se ejecuta por cada uno de sus elementos.
Si aún no sabes usar las arrow functions, echa un ojo:
➡
Una ventana modal es aquella que al aparecer, impide al usuario hacer otra cosa hasta que la atiendas.
Te explico (en un par de tweets) como hacer una ventana modal de forma nativa con HTML (y un poquito de Javascript).
🧵🔽
1️⃣ En HTML existe la etiqueta <dialog>, no muy conocida, que nos permite crear ventanas de diálogo con el contenido que queramos (texto, imágenes, video, botones, etc...).
La etiqueta por defecto está cerrada, pero con el atributo `open`, o llamando a `.show()`, se muestra.
2️⃣ Al igual que podemos mostrar la ventana de diálogo con `dialog.show()`, podemos cerrarla con `dialog.close()`, por lo que podemos establecer un evento en el botón del interior de la ventana.
A continuación, una ruta cronológica de tecnologías Javascript para aprender Frontend, saber en que lugar estás y en que podrías seguir enfocándote en aprender.
⚠ Disclaimer:
Cuida tus soft skills. Es una ruta subjetiva.
¡Vamos allá!
🧵🔽
1️⃣ En primer lugar, aprende bases y fundamentos de diseño web.
Para ser más productivo, se usan frameworks CSS como Bootstrap o Tailwind.
2️⃣ El siguiente paso sería aprender fundamentos de programación (es una carrera de fondo) para luego empezar con Javascript ( lenguajejs.com ) y la terminal ( terminaldelinux.com ). Es muy importante.
VSCode es el editor más usado. Aprende git (control de versiones)
Hay ciertos conceptos denominados «FUOC», «FUOT» o «FOIT» relacionados con los estilos CSS de una página y la forma de cargarlos.
¡Te explico en un par de tweets de que se trata!
🧵🔽
1️⃣ El concepto «FUOC» son las siglas de «Flash of unstyled content», o lo que es lo mismo, ese momento al cargar la página que, durante unos instantes, muestra contenido de una forma extraña y particular, y de repente se "coloca" todo correctamente.
Esto ocurre porque al navegador no le ha dado tiempo de descargar y aplicar los estilos en el navegador, y lo que estás viendo es el contenido de la página sin CSS (o sin parte de ellos).
En algunos casos puede ocurra sólo en el primer acceso, porque el navegador cachea el CSS.