Propiedad CSS break-after: guía completa, usos y porte

Zadnje ažuriranje: 11/15/2025
  • break-after controla saltos tras un elemento en páginas, columnas y regiones, con valures para forzar, evitar o ajustar el contexto.
  • La prioridad es break-before sobre break-after y sobre break-inside; existen valores forzados y de evitar que condicionan el corte.
  • prijelom stranice nakon aktua kao alias en impresión; conviene usarlo como backback junto a break-after en proyectos con soporte variado.

Ilustración de saltos de página y columnas con CSS break-after

Cuando maquetas para impresión, multicolumnas o flujos fragmentados, tarde o temprano te preguntas cómo forzar o evitar que algo salte a la siguiente página o columna. Ahí es donde entra en juego CSS svojstvo break-after, una herramienta que indica al navegador si debe producirse un salto justo después de un elemento.

Más allá de los casos típicos de impresión, break-after es útil en diseños complejos: periódicos digitales con columnas, informes en PDF, documentos con páginas pares e impares y hasta flujos por regiones. Su potencia radica en que puede forzar, permitir o impedir saltos según el contexto: páginas impresas, columnas o regiones.

Qué es la propiedad CSS break-after

Vlasništvo break-after define si debe producirse un salto de página, columna o región inmediatamente después del elemento al que se aplica. Dicho de forma llana, marca un punto de corte justo tras el componente, de modo que el contenido posterior empiece en la siguiente “unidad” de fragmentación (página, columna o región) según el entorno en el que esté maquetando el navegador.

Históricamente, en CSS 2.1 disponíamos de page-break-after za srednje stranice. Hoy, prekid-nakon amplía ese concepto para funcionar también con multicolumnas y regiones, además de mantener compatibilidad con los valores clásicos usados ​​en impresión.

Sintaxis, valores y cómo interpretarlos

La forma básica de uso es directa: break-after: <valor>. Estos valures cubren contextos genéricos y específicos de páginas, columnas o regiones:

break-after: auto | avoid | always | all |
             avoid-page | page | left | right | recto | verso |
             avoid-column | column |
             avoid-region | region

Valores genericos (válidos en cualquier contexto): auto (ni fuerza ni prohíbe un salto), avoid (namjera izbjegavanja), always (fuerza un salto en el contexto de fragmentación inmediato) y all (eksperimentalno, fuerza el salto atravesando todos los contextos de fragmentación: por ejemplo, columna y página a la vez si aplica).

Valores para medios paginados: avoid-page (evita salto de pagina), page (vrh stranice), left y right (fuerzan uno o dos saltos para asegurar que el siguiente contenido comienza en página izquierda o derecha, respectivamente). Además, recto y verso son valores experimentales que obvezan a que la siguiente página sea recto o verso nakon protoka jezika.

Valores para diseño multicolumna: avoid-column evita skok od stupca column lo fuerza. En contenidos extensos repartidos por varias columnas, estos valores son clave para no cortar piezas delicadas (como un fragmento de código) o para alinear bloques a la cabecera de la siguiente columna.

Vrijednosti za regije: avoid-region y region kontroliraj sva područja definirana za CSS regije. Aunque esta especificación tuvo tracción en su momento, el soporte real de regiones es limitado en navegadores modernos, por lo que conviene considerar su uso como experimental o de legado.

Ejemplo vizualni de break-after en columnas y páginas

Reglas de decisión del navegador: forzar, evitar y prioridades

En cada punto donde podría producirse una rotura (el “borde” entre elementos), el navegador evalúa tres propiedades: el break-after prednjeg elementa, break-before sljedećeg i break-inside del contenedor. Es la interacción de las tres la que determina el resultado.

El algoritmo, simplificado, funciona así: si alguna de esas propiedades especifica un hrabrost forzado (always, left, right, page, column, region), ese valor tiene prioridad. Si hay varios forzados, gana el que está más “adelante” en el flujo: break-before > break-after > break-inside.

Si en ese punto aparece algún hrabrost izbjegavanja (avoid, avoid-page, avoid-column, avoid-region), no se aplicará el saltorespondiente. Después de resolver los saltos forzados, el navegador puede añadir “saltos suaves” si lo necesita, pero nunca en límites marcados con valores de evitar.

Relación con page-break-after y compatibilidad histórica

Por motivos de compatibilidad, los navegadores tratan page-break-after kao pseudonim break-after en medios paginados. Esto asegura que sitios antiguos que usaban la propiedad clásica sigan comportándose como se esperaba.

La equivalencia de valores funciona de la siguiente manera: autoauto, alwayspage, avoidavoid-page, leftleft, rightright. U praksi, puedes escribir ambos para mayor robustez u otisku:

.elemento {
  page-break-after: always; /* fallback histórico */
  break-after: page;        /* estándar actual */
}

Tu je također page-break-before con la misma filosofía en el “lado anterior” del elemento. Usar prije o poslije depende del punto exacto donde quieras el corte u svojoj maquetación.

Ámbito de aplicación y comportamiento visual

Nekretnina se primjenjuje kutije za blokadu en flujo normal y, por extensiones modernas, a ítes de grid, stavke flex, grupos de filas de tablas y filas de tabla. No se hereda, su valor inicial es auto y su tipo de animación es discreto (es decir, no interpola como tal en transiciones).

Cuando una página o columna corta una caja, los márgenes, bordes y padding no se dibujan en el punto de corte. La única excepción es el margen inmediatamente posterior a un salto forzado, que se conserva. Este detalle ayuda a mantener el espacio visual correcto tras un salto insertado expresamente.

Praktični primjeri korištenja

Impresión (TOC que siempre termina la página): si quieres que después del índice de contenidos empiece una página nueva, puedes usar la siguiente regla dentro de un @media print. Es una situación típica en libros o informes donde interesa separar claramente secciones clave:

@media print {
  #tabla-de-contenidos {
    break-after: always;
  }
}

Impresión con página derecha: en publicaciones a doble cara, puede ser necesario que el siguiente capítulo comience en una página derecha. Para zdravo, iskoristiti hrabrost right:

@media print {
  #tabla-de-contenidos {
    break-after: right;
  }
}

Multicolumnas: imagina un contenedor con título principal que ocupa todas las columnas (column-span: all) y subsecciones que quieres alinear en cabecera de columna. Aplikacija break-after: column u prethodnom bloku (na primjer, u <p> o en cada <section>) para forzar el salto de columna:

main {
  column-width: 200px;
}
h1 {
  column-span: all;
}
section {
  break-after: column; /* cada sección empieza arriba de la siguiente columna */
}

Evitar saltos tras filas de tabla: si quieres mantener una tabla en la misma página cuando sea posible, añade break-after: avoid u redovima. En documentos impresos esto reduce cortes raros en el cuerpo de una tabla:

tr {
  break-after: avoid;
}

Evitar cortes dentro de un fragmento delicado en columnas: un bloque de código al que no quieres partir entre columnas puede beneficiarse de break-after: column na prednjem elementu o manejarlo con break-inside: avoid-column dentro del propio bloque, según el caso:

.articulo {
  column-width: 12em; /* activa multicolumnas */
}
.articulo .code-snippet {
  break-after: column; /* tras el snippet, siguiente columna */
}

Regiones: si trabajas con flujos por regiones (soporte limitado), puedes indicar que una lista termine una región y que el resto fluya en la siguiente. Aunque no es lo más común hoy, sirve como referencia de cómo se pensó la propiedad u ovim kontekstima:

.region ul {
  break-after: region;
}

Adaptación condicional: si deseas que en pantallas pequeñas el comportamiento vuelva a auto para evitar fragmentación agresiva, puedes apoyarte en media queries:

@media screen and (max-width: 768px) {
  h2 {
    break-after: auto;
  }
}

Cómo se combinan break-prije, break-after y break-ins

Estas tres propiedades actúan a la vez. Es habitual, por ejemplo, usar break-inside: avoid u komponenti za koju ne pije unutra, mientras que una cabecera siguiente deklarirati break-before: page para arrancar en una página nueva. Si el "prije" pide un salto, tendrá preferencia sobre el “nakon” previo.

La prioridad ya commentada es importante: break-before gana a break-after, što je tvoja veza gana a break-inside. Si varios piden romper, se aplica el del elemento que aparece más tarde en el flujo de documento.

Compatibilidad y soporte por contexto

Podrška break-after ovisno o kontekstu. En paginación/impresión, los navegadores modernos lo implementan de forma amplia, y el alias page-break-after mantiene la retrocompatibilidad de sitios antiguos.

U više stupaca, hrabrost column está disponible en motores modernos; sin embargo, en navegadores basados ​​en WebKit ha coexistido el prefijo -webkit-column-break-after como alternativa no estándar. Si apuntas a un público amplio, conviene probar y, si procede, incluir el prefijo de respaldo za stupce.

Para regiones, el panorama es muy irregular: CSS Regions no está implantado de forma generalzbog vrijednosti region y avoid-region deben considerarse experimentales o de legado.

Un apunte histórico: hubo demostraciones en las que IE10+ mostraba saltos de columna con break-after mientras que navegadores WebKit pedían el prefijo -webkit-column-break-after, y Firefox se traži u ovom kontekstu. Hoy el soporte ha mejorado, pero sigue siendo buena ideja kontrastar los tres entornos (impresión, columnas y regiones) en los navegadores objetivo.

Buenas prácticas de maquetación con break-after

  • Koristite ga umjereno: un “siempre salta” tras cada bloque genera espacios en blanco y maquetaciones poco fluidas. Empléalo solo donde aporte claridad.
  • Izbjeći s kriterijima: zlostavljanje avoid puede provocar cortes incómodos en otras partes del documento. Combínalo con break-inside cuando quieras proteger un componente.
  • Pruebas en navegadores y dispositivos: imprime a PDF, usa la vista previa de impresión y testea multicolumnas. El comportamiento puede variar por motor y contexto.
  • Medijski upiti s kavezom: hay decisiones de fragmentación que tienen sentido en papel pero no en móvil; ajusta con @media kada je to potrebno.

Detalles técnicos y de especificación

Recapitulando el modelo de la propiedad: početna vrijednost auto, no heredada, valor computado “tal cual” se especifica y diskretna vrsta animacije. Aunque su uso típico no implica animaciones, este detalle aclara que no existe transición gradual entre estados de corte.

En cajas divididas por un salto, los bordes, rellenos y márgenes no se “repiten” en el punto de rotura. Se conserva el margen inmediatamente después de un salto forzado, lo cual es útil para mantener la separación del contenido que arranca en la nueva página o columna.

Patrones habituales y trucos (con contexto histórico)

En épocas con soporte irregular, se popularizó un truco: insertar un DIV vakuumirano s &nbsp; i dodijeliti ga page-break-before/after para forzar el salto antes o después del componente real. A día de hoy, no es la solución “bonita”, pero puede rescatar maquetaciones de legado donde page-break-* bolje funkcionira nego break-* en ciertos navegadores antiguos.

El truco solía escribirse así (para provocar un salto antes de una tabla): primero el DIV con salto, luego un párrafo separador y la tabla, de modo que la tabla apareciera al principio de una página nueva al imprimir:

<div style="page-break-before: always;">&nbsp;</div>
<p></p>
<table>
  <tr><td>Contenido...</td></tr>
</table>

Si trabajas con multicolumnas en WebKit clásico, recuerda que stari -webkit-column-break-after aún puede servir como salvavidas junto al valor estándar, por ejemplo:

figure {
  break-after: column;
  -webkit-column-break-after: always; /* respaldo no estándar */
}

Napredni slučajevi upotrebe

Paginación a doble cara: en libros y revistas, es común exigir que capítulos arranquen siempre en páginas derechas. Da biste to učinili, upotrijebite right. Si el contenido siguiente ya caía en una derecha, no habrá salto extra; si no, el navegador insertará uno adicional para cuadrarlo.

Diseños híbridos (páginas con columnas dentro): si estás en una sección multicolumna situada en una página impresa, el valor all puede romper tanto la columna como la página, garantizando que el siguiente bloque empiece limpio en el contexto superior. Es un valor eksperimentalna, así que provjereno s mimo.

Reflujo ordenado de secciones: cuando tienes varias secciones que deben comenzar en cabecera de columna, primijeniti break-after: column svaki dio ayuda a que queden “cuadradas” visualmente, con prilazni naslovi y sin fragmentos partidos en posiciones incómodas.

Pequeño recordatorio de alias y valores equivalentes

Si todavía mantienes hojas de estilo de impresión con page-break-after, puedes alinearlas con el mundo moderno así: page-break-after: always jednako break-after: page; page-break-after: avoid se mapea a break-after: avoid-page; left y right conservan su significado. Esto te permite actualizar de forma progresiva.

Para casos donde el navegador no implemente completamente la familia break-* u konkretnom kontekstu, mantener el alias clásico como "fallback" suele ser un movimiento inteligente, sobre todo en proyectos con usuarios que imprimen con navegadores muy variados.

Uobičajene pogreške i kako ih izbjeći

mjesto break-after: always u višku provoca páginas o columnas semi vacías. Antes de forzar, valora si avoid o auto ya ofrecen un corte natural aceptable.

Zanemarite interakciju s break-inside es otro fallo uobičajeno. Si un componente no debe dividirse, dodaje break-inside: avoid (o avoid-page/avoid-column) además de manejar el “poslije” ili “prije” en los elementos adyacentes.

No probar en contexto real es el tercer clásico: la vista previa de impresión no siempre es fiel a cómo quedará el PDF o la impresora física. Genera un PDF, revisa márgenes y asegúrate de que los saltos respetan cabeceras y pies.

Brza isplata nekretnine

  • Inicijal: auto
  • Odnosi se na: cajas de bloque, ítems de grid, ítes de flex, grupos de filas de tabla y filas
  • Naslijeđeno: Ne
  • Izračunata vrijednost: kako se specificira
  • Vrsta animacije: diskretni

Por último, recuerda que algunos valores (all, recto, verso) siguen marcados como experimentales en los borradores de especificación. Aunque existen implementaciones parciales, tu estrategia debe incluir pruebas y "fallbacks" kad ovisim o njima.

Da dominiraju break-after te permite maquetar documentos que se imprimen bien, columnas ordenadas y flujos de lectura claros. Poco que lo kombinira con break-before y break-inside y tengas en cuenta los alias históricos y los prefijos de respaldo, obtendrás cortes precisos y previsibles sin pelearte con páginas en blanco ni bloques partidos donde no toca.

svojstvo css overflow-y
Povezani članak:
Propiedad CSS overflow-y: Guía Completa, Valres y Trucos
Povezani postovi: