Communitygithub.com

diseño-de-maquetación-de-página

Úsala al diseñar o rediseñar una sección de una página web (espaciado entre secciones, escala tipográfica, cuadrículas de tarjetas, bloques de estadísticas y números, tiras de logotipos, la primera pantalla), o cuando una página funciona técnicamente pero se ve con plantilla, desigual, suelta o sin terminar.

¿Qué es diseño-de-maquetación-de-página?

Esta habilidad está diseñada para agentes de IA y desarrolladores que trabajan en la maquetación y el diseño visual de páginas web. Su propósito es eliminar la sensación de 'plantilla' o 'desordenada' que surge cuando el espaciado vertical, la tipografía y los componentes se deciden sección por sección sin un sistema unificado. La habilidad establece un principio central: elegir una única escala de espaciado, una escala tipográfica y un sistema de secciones antes de comenzar a estilizar, y nunca introducir un valor que no esté en esas escalas. Proporciona reglas concretas para sistemas de secciones (tamaño de título, borde izquierdo, etiqueta, tarjeta), ritmo de espaciado (con tokens `--sec` y `--blk`), la primera pantalla (para que el siguiente strip sea visible), tipografía (máximo dos familias, números tabulares), tarjetas y cuadrículas (con soluciones a errores comunes como contenido desigual), bloques de números, tiras de logotipos (ajuste por peso óptico) y CSS compartido para evitar desbordamientos en móviles. También incluye una lista de verificación para auditar la página final y una tabla de 'señales de una página con plantilla' para identificar problemas comunes. La habilidad es independiente de la plataforma (funciona con Claude Code, Cursor, Codex, etc.) y se basa en principios de diseño visual y CSS que cualquier agente o desarrollador puede aplicar.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/igal-commits/landing-page-skills/tree/HEAD/skills/designing-page-layout

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Diseño de Maquetación de Página

Resumen

La mayoría de las páginas fallan en el ritmo, no en las ideas. La tipografía está bien, los colores están bien, y aun así se ven como una plantilla, porque el espaciado vertical se decidió sección por sección y nada está alineado.

Principio central: elige una escala de espaciado, una escala tipográfica y un sistema de secciones antes de estilizar cualquier cosa, y luego nunca introduzcas un valor que no esté en ellas.

El sistema de secciones

Las secciones de contenido comparten un puñado de valores. Las escenas ancladas son la excepción.

ParteRegla
Título de secciónun tamaño para cada sección de contenido (por ejemplo 48 en escritorio, 38 en móviles)
Borde izquierdoun borde, igual al borde del logo de navegación. Una escala que se ajusta a la altura mueve el borde, así que mídela
Etiquetaun estilo de píldora sobre el título
Tarjetaun radio, un filete, un tono. Nunca borde más sombra más relleno
Tarjeta finalel título en las filas de la cuadrícula, los botones en la siguiente fila, sin frase adicional

Las escenas ancladas y desplazadas mantienen sus propios tamaños de escenario. Están diseñadas para tener la altura de la ventana gráfica, y su espacio en blanco es pista de desplazamiento. No reduzcas un escenario anclado sin reanclar cada posición que sea un porcentaje del mismo.

Una página donde cada sección tiene su propio tamaño de título, su propio borde izquierdo y su propia tarjeta se ve ensamblada. Esta tabla es lo que lo evita.

Ritmo de espaciado

Decide la escala una vez. Una base de 4px con una rampa geométrica lo cubre todo:

0.4  0.8  1.6  2.4  3.2  4.8  6.4  8  12  16 rem

Conduce todo el espaciado de secciones a través de dos tokens, --sec entre secciones y --blk entre bloques dentro de una. Ajustar una página suelta significa cambiar dos números, no cuarenta. En una página, 48 y 40 unidades en escritorio y 36 y 28 en móviles redujeron el documento aproximadamente un 10%.

Los tamaños de los elementos no cambian cuando ajustas el ritmo. Tarjetas, tipografía, logotipos, botones: mantenlos como fueron diseñados. Compara los tamaños de los componentes entre la compilación anterior y la nueva para demostrarlo.

El relleno de las secciones es donde las páginas se desmoronan. Audita cada unión, no cada sección:

UniónEspacio totalSe lee como
Dos secciones no relacionadas200-240pxcapítulos separados
Un bloque que continúa el anterior40-80pxun capítulo, dos partes
Contenido a sangre que encuentra una sección0un corte

Mide la suma del padding-bottom de la sección superior y el padding-top de la inferior. Una página con 120/60, 64/20, 24/0 y 0/120 produce espacios de 180, 84, 24 y 120 sin lógica. El lector lo percibe como descuido sin poder nombrarlo.

Un espacio de más de ~240px sobre un fondo de un solo color necesita algo dentro. O lo ajustas o pones un CTA allí.

La primera pantalla

Dimensiona el héroe para que la siguiente tira se muestre en la primera pantalla. clamp(620, 100svh - 150, 900) unidades coloca la tira de prueba a la vista después de un desplazamiento. Un héroe que llena la ventana gráfica y no muestra nada debajo oculta la prueba de la que depende la página.

Los componentes compartidos pertenecen al sitio

Una navegación, pie de página o botón que existe en el sitio en vivo es el diseño. No lo rediseñes en una nueva página. Cuando se ve diferente en la nueva página, la causa es casi siempre una anulación a nivel de página que se filtra. Compara los estilos calculados con el sitio en vivo y elimina la anulación, limitada al punto de ruptura donde se filtra.

Escala tipográfica

Dos familias como máximo: una para visualización, una para texto. Las cifras en una fuente de visualización se leen como diseñadas; las cifras en una fuente de cuerpo simple se leen como datos.

Configura siempre font-variant-numeric: lining-nums tabular-nums en cualquier número que esté en una fila con otros números. Sin ello, "3.000" y "500.000+" no se alinearán y no sabrás por qué.

El interletraje negativo escala con el tamaño: aproximadamente -0.02em en tamaños de visualización, 0 en cuerpo, 0.08em positivo en cejas en mayúsculas.

Coincide exactamente con los anchos tipográficos del diseño. Consulta extracting-figma-truth para la trampa del tamaño óptico.

Tarjetas y cuadrículas

El error más común en tarjetas es el contenido desigual que produce tarjetas desiguales.

AntesDespuésPor qué
.card { padding: 2rem } en una cuadrículaañade align-items: stretch en la cuadrícula y height: 100% en la tarjetade lo contrario las tarjetas son tan altas como su propio contenido
El contenido fluye de arriba a abajomargin-top: auto en el elemento que debe estar en la parte inferiorfija la métrica o CTA a una línea base compartida entre tarjetas
La etiqueta se ajusta a 1 línea en una tarjeta, a 2 en otramin-height igual a 2 líneas en la etiquetamantiene la línea base de cada tarjeta idéntica
<img> con tamaño intrínsecocontenedor con aspect-ratio + object-fit: cover en la imagenuna cuadrícula de imágenes de relación de aspecto mixta no es una cuadrícula
Relleno gris detrás de las tarjetasblanco con un filete de 1pxlos rellenos se leen como marcadores de posición, los filetes se leen como diseñados

Bloques de estadísticas y números

Un bloque de números tiene tres partes en un orden fijo: fuente o etiqueta arriba, cifra, leyenda debajo. La cifra es el elemento más grande del bloque y cada cifra de la fila comparte una línea base.

  • Nunca pongas un no-número en una ranura de número. "Creative Ops" en una fila con "150+" y "3.000" se lee como un error. O encuentra el número o mueve ese hecho a prosa.
  • Una cifra que se ajusta a dos líneas rompe la fila. "6 semanas a 24 horas" se convierte en "24h" con el resto en la leyenda.
  • Limita la leyenda a dos líneas. Si necesita tres, la leyenda está haciendo el trabajo de la cifra.

Tiras de logotipos

Los logotipos se dimensionan por peso óptico, nunca por cuadro delimitador. Un logotipo apilado, una insignia cuadrada y una marca denominativa de una sola línea configurados con la misma altura CSS se verán mal de tres maneras diferentes.

Empieza con: logotipo apilado 44px, insignia cuadrada 40px, marca denominativa 22px, luego ajusta a ojo. Normaliza cada marca a un solo color de tinta. Los colores de logotipo mezclados hacen que una tira parezca raspada. Solo los logotipos con fondo claro van en una tira (ver writing-claims-that-hold).

CSS compartido y desbordamiento en móviles

Una regla de ancho escrita para un componente de escritorio, como width: 37rem !important, puede hacer que todo el documento sea más ancho que un teléfono (428 contra 390). El síntoma es una franja blanca en el borde derecho. Verifica scrollWidth contra clientWidth a 390, y limita los anchos fijos a los puntos de ruptura para los que fueron diseñados.

Las señales de una página con plantilla

  • Cada sección está centrada
  • Los rellenos de sección son todos 120px independientemente de la relación
  • Las tarjetas tienen tanto borde como sombra y relleno
  • Los encabezados están configurados en la fuente del cuerpo con un peso más pesado
  • Los números están en la fuente del cuerpo
  • Dos colores de acento, ninguno de los cuales es de la marca
  • Valores de border-radius de 4, 8, 12 y 16 todos en una misma página

Lista de verificación

  • Cada valor de espaciado está en la escala; las secciones funcionan con dos tokens
  • Cada espacio de unión de sección es deliberado y cae en una de las tres bandas
  • Un tamaño de título, un borde izquierdo, una etiqueta, un estilo de tarjeta en todas las secciones de contenido
  • La siguiente tira se muestra en la primera pantalla
  • Los componentes compartidos coinciden con los estilos calculados del sitio en vivo
  • Las tarjetas en una cuadrícula tienen la misma altura, con una línea base interna compartida
  • Todos los medios en una cuadrícula comparten una única aspect-ratio
  • Los números usan cifras tabulares con alineación
  • Los logotipos están dimensionados ópticamente y son de un solo color de tinta
  • No hay desbordamiento horizontal a 390
  • No hay espacio de más de 240px que no contenga nada

Individual skills in this repo

This repo contains 5 individual skills — each has its own dedicated page.

Skills relacionados