`,g.querySelector(`.title`).textContent=a,g.querySelector(`.subtitle`).textContent=c??r,f.insertAdjacentElement(`beforeend`,g),g.animate(b,75)},d=a=>a.toLowerCase().normalize(`NFD`).replace(/[\u0300-\u036f]/g,r),e=async(a,b=r,c=s)=>{const e=await fetch(`${b}/api/contents.json`).then(a=>a.json());return new t((f,g)=>{const h=e.filter(b=>{const c=b.type===`category`,e=d(b.title).includes(a)||d(b?.subtitle||r)?.includes(a)||d(b?.tags||r)?.includes(a);return !c&&e}).slice(n,c).map(a=>({title:a.title,subtitle:a?.subtitle||r,icon:`/assets/icons/logos.svg#${a.topic.replace(`javascript`,`js`)}`,url:b+ a.url}));return f(h)})},f=async(a,b=s)=>{const c=await fetch(`/api/youtube.json`).then(a=>a.json());return new t((e,f)=>{const g=c.filter(b=>d(b.title).includes(a)).slice(n,b).map(a=>({title:a.title,subtitle:q,icon:`https://img.youtube.com/vi/${a.id}/default.jpg`,url:`https://youtu.be/${a.id}`}));return e(g)})},g=15,h=new URL(location.href).origin,i=[`https://lenguajehtml.com`,`https://lenguajecss.com`,`https://lenguajejs.com`,`https://terminaldelinux.com`].filter(a=>a!==h);i.length<4&&i.unshift(r);const j=async()=>{const a=document.querySelector(u),b=document.querySelector(p),h=d(a.value),j=h.length>3;if(b.innerHTML=r,!j)return;const k=document.querySelector(`dialog.search .loading`);k.classList.add(`loading`,v);const l=structuredClone(i).map(a=>e(h,a));l.push(f(h));const m=(await t.all(l)).flat(o/n).slice(n,g);k.classList.remove(v),k.classList.add(w),setTimeout(()=>k.classList.remove(w),x),m.forEach(a=>c(a))},k=document.querySelector(y),l=()=>{if(document.querySelectorAll(`dialog.search`).length>n)return;const b=document.createElement(`dialog`);b.innerHTML=`
`,b.addEventListener(z,()=>{document.body.classList.remove(A),b.close(),b.remove(),k.blur()});const c=a=>{const d=b.getBoundingClientRect();(a.clientXd.right||a.clientYd.bottom)&&(document.body.removeEventListener(B,c),b.dispatchEvent(new Event(z)))};setTimeout(()=>document.body.addEventListener(B,c),x),b.classList.add(`search`),b.querySelector(`input.query`).focus(),document.body.append(b),b.showModal(),document.body.classList.add(A),document.querySelector(u).addEventListener(`input`,a(j,400))};addEventListener(`keydown`,a=>{const {key:b,ctrlKey:c}=a;b.toLowerCase()===`k`&&c&&(a.preventDefault(),l(),document.querySelector(u).focus())});const m=document.querySelector(y);m.addEventListener(`focus`,l)
Acceso rápido
CheatSheet
CheatSheet descargable
CheatSheet
Lista de funciones CSS
CheatSheet
Baseline CSS

1 Nociones básicas

Nociones básicas

Antes de comenzar en el mundo de CSS, necesitamos aprender una base para saber desenvolvernos, los puntos clave iniciales, como medir tamaños, que unidades utilizar y variables para almacenar información.

3 temas · 12 posts

Requisitos:

Introducción a CSS

Unidades CSS

Variables CSS

2 Color y fondos

Color y fondos

3 Modelo de cajas

Modelo de cajas

La parte fundamental para comprender como renderiza y dibuja los elementos web en un navegador es el modelo de cajas. Márgenes, rellenos, bordes y algunos conceptos más son una parte fundamental de CSS.

2 temas · 11 posts

Modelo de cajas

Bordes CSS

4 Lógica CSS

Lógica CSS

5 Selectores CSS

Selectores CSS

6 Tipografías

Tipografías

7 Layouts

Layouts

8 Interfaz de Usuario

Interfaz de Usuario

Si necesitamos dar estilo a ciertos elementos de la interfaz de usuario de nuestro navegador, como barras de desplazamiento, cursor del ratón, tablas, listas o contadores, en este capítulo te lo explicamos.

2 temas · 8 posts

Interacciones

Representación de datos

9 Efectos

Efectos

Todos los diseños mejoran si incluímos llamativos y atractivos efectos. Sombras, filtros, modos de fusión, máscaras o recortes pueden permitirnos hacer todo tipo de diseños maravillosos.

3 temas · 12 posts

Sombras

Efectos

Máscaras y recortes

10 Responsive

Responsive

El responsive web design es la forma de crear diseños o layouts que se adapten o respondan a diferentes tamaños de pantalla o dispositivo. Aquí encontrarás todo tipo de facilidades para este tema.

1 tema · 8 posts

Responsive Web Design

11 Transformaciones y dibujos

Transformaciones y dibujos

Aunque suele mantenerse al margen de los layouts, las transformaciones, tanto 2D como 3D, suelen ser muy útiles para conseguir impresionantes resultados o animaciones llamativas. Además, también es la base para dibujar con CSS.

2 temas · 11 posts

Transformaciones 2D/3D

Dibujar con CSS

Comienza a aprender

¿...o prefieres un roadmap?