- break-after controla saltos tras un elemento en páginas, columnas y regiones, con valores 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.
- страница-прекъсване след действие като псевдоним в импресия; conviene usarlo como fallback junto a break-after en proyectos con soporte variado.

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 свойството 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 сегън ел контекст: страници, колони или региони.
Qué es la propiedad CSS break-after
Собствеността 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 за средни страници. Хей, прекъсване след 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 genericos y specíficos de páginas, columnas or regiones:
break-after: auto | avoid | always | all |
avoid-page | page | left | right | recto | verso |
avoid-column | column |
avoid-region | region
Valores genéricos (válidos en cualquier contexto): auto (ni fuerza ni prohíbe un salto), avoid (намерение за премахване), always (fuerza un salto en el contexto de fragmentación inmediato) y all (експериментално, 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 (превъртане на страницата), page (върху края на страницата), left y right (fuerzan uno o dos saltos para asegurar que el siguiente contenido comienza en página izquierda o derecha, respectivamente). Адемас, recto y verso son valures experimentales que obligan a que la siguiente página sea recto o verso след потока на езика.
Valores para diseño multicolumna: avoid-column издигане на колона 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.
Цени за региони: avoid-region y region контролиране на определени зони за CSS региони. 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.
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 дел елемент от предния, на break-before следното и 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 храброст форсадо (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 храброст на измъкване (avoid, avoid-page, avoid-column, avoid-region), no se aplicará el salto correctiente. 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 като псевдоним 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: auto → auto, always → page, avoid → avoid-page, left → left, right → right. На практика, puedes escribir ambos para mayor robustez отпечатък:
.elemento {
page-break-after: always; /* fallback histórico */
break-after: page; /* estándar actual */
}
Също съществува page-break-before con la misma filosofía en el “lado anterior” del elemento. Usar преди o след depende del punto exacto donde quieras el corte в твоята макетация.
Ámbito de aplicación y comportamiento visual
Имотът се прилага шкафове за ниво на блокиране en flujo normal y, por extensiones modernas, a ítes de grid, артикули от 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.
Практически примери за използване
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. Пара здравей, използвай храбростта 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. Приложение break-after: column в предишния блок (на пример, в <p> о ен када <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 в чифтосите. 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 в предния елемент или управлявам с 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 в този контекст:
.region ul {
break-after: region;
}
Adaptación condicional: si deseas que en pantallas pequeñas el comportamiento vuelva a auto пара evitar fragmentación agresiva, puedes apoyarte en media queries:
@media screen and (max-width: 768px) {
h2 {
break-after: auto;
}
}
Cómo se combinan break-before, break-after y break-inside
Estas tres propiedades actúan a la vez. Es habitual, por ejemplo, usar break-inside: avoid в компонент, който да не се забавлявам вътре, mientras que una cabecera siguiente declare break-before: page para arrancar en una página nueva. Si el "before" pide un salto, tendrá preferencia sobre el “after” previo.
La prioridad ya commentada es importante: break-before гана а break-after, какво е направил/а твоят човек 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
Подкрепата на break-after зависи от контекста. 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.
В много колони, храбростта 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 пара колони.
Para regiones, el panorama es muy irregular: CSS Regions no está implantado de forma general, заради това, което ценят region y avoid-region deben considerarse experimentales o de legado.
Un apunte histórico: hubo demostraciones en las que IE10+ най-често използваните колони с прекъсване след mientras que navegadores WebKit pedían el prefijo -webkit-column-break-after, y Firefox се показва в този контекст. Hoy el soporte ha mejorado, pero sigue siendo buena idea kontrastar los tres entornos (impresión, columnas y regiones) en los navegadores objetivo.
Buenas prácticas de maquetación con break-after
- Използва се с модерация: un “siempre salta” tras cada bloque genera espacios en blanco y maquetaciones poco fluidas. Empléalo solo donde aporte claridad.
- Избягвайте с критерии: злоупотреба с
avoidpuede provocar cortes incómodos en otras partes del documento. Combínalo conbreak-insidecuando quieras proteger un componente. - Pruebas en navegadores y dispositivos: отпечатайте PDF, usa la vista previa de impresión y testea multicolumnas. El comportamiento puede variar por motor y contexto.
- Медийни запитвания с cabeza: hay solutiones de fragmentación que tienen sentido en papel pero no en móvil; ajusta con
@mediaкогато е необходимо.
Detalles técnicos y de especificación
Recapitulando el modelo de la propiedad: начална стойност auto, no heredada, valor computado “tal cual” se especifica y дискретен тип анимация. 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 вакуум с и го възложи 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-* функционира по-добре от това 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;"> </div>
<p></p>
<table>
<tr><td>Contenido...</td></tr>
</table>
Si trabajas con multicolumnas en WebKit clásico, recuerda que Ел Виехо -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 */
}
Разширени случаи на употреба
Paginación a doble cara: en libros y revistas, es común exigir que capítulos arranquen siempre en páginas derechas. За да направите това, използвайте 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. Е un valor експериментален, así que проверено с мимо.
Reflujo ordenado de secciones: cuando tienes varias secciones que deben comenzar en cabecera de columna, прилага break-after: column всяка секция ayuda a que queden “cuadradas” visualmente, con приближаващи се заглавия 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 равно на break-after: page; page-break-after: avoid се мапеа а 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-* в конкретен контекст, mantener el alias clásico como "fallback" suele ser un movimiento inteligente, sobre todo en proyectos con usuarios que imprimen con navegadores muy variados.
Често срещани грешки и как да ги избегнем
място break-after: always в излишък provoca páginas или columnas semi vacías. Antes de forzar, valora si avoid o auto ya ofrecen un corte natural aceptable.
Игнорирайте взаимодействието с break-inside es otro fallo habitual. Si un componente no debe dividirse, добавя break-inside: avoid (o avoid-page/avoid-column) además de manejar el „след“ или „преди“ 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 или la impresora física. Genera un PDF, revisa márgenes y asegúrate de que los saltos respetan cabeceras y pies.
Бърза оплата на имота
- Първоначално:
auto - Отнася се за: cajas de bloque, ítems de grid, ítems de flex, grupos de filas de tabla y filas
- Ередада: Не.
- Изчислена доблест: какво е специфично
- Вид анимация: дискретна
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” когато завися от тях.
Да доминира break-after te permite maquetar documentos que se imprimen bien, columnas ordenadas y flujos de lectura claros. A poco que lo съчетава 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.
