Propiedad CSS overflow-y: guía completa, valores y trucos

છેલ્લો સુધારો: 11/13/2025
  • ઓવરફ્લો-વાય કંટ્રોલ અલ ડેસ્બોર્ડિમેંટો વર્ટિકલ: રેકોર્ટા, ડેસપ્લાઝા ઓ મ્યુસ્ટ્રા અલ કોન્ટેનિડો.
  • સ્વતઃ/સ્ક્રોલ/છુપાયેલ ક્રીન સંદર્ભો ડી ફોર્મેટો; ક્લિપ recorta sin permitir desplazamiento.
  • પેરા que surta efecto, altura વ્યાખ્યાયિત કરો (o બ્લોક-કદ) y combina con overflow-x según convenga.
  • એટેન્ડે એક્સેસિબિલિડેડ: ફોકો પોર ટેક્લાડો, ટેબન્ડેક્સ વાય ભૂમિકાઓ/નોમ્બ્રેસ ARIA એપ્રોપિયાડોસ.

Ilustración sobre la propiedad CSS overflow-y

કંટ્રોલર cómo se comporta el contenido cuando se sale del contenedor es clave para un diseño web limpio y useable; en ese terreno, overflow-y en CSS manda sobre el desbordamiento vertical, decidiendo si recortar, mostrar barras de desplazamiento o dejar que el contenido se asome fuera del cuadro.

Más allá de lo básico, hay matices que cambian por completo el resultado: ciertos valores activan un nuevo contexto de formateo, algunos permiten desplazamiento con JavaScript y otros lo bloquean, y hasta hay efectos colaterales que pueden provocar que un contenedor pase a ser “scrollable” en ambos ejes si no se configura bien.

¿Qué es overflow-y y para qué sirve?

મિલકત ઓવરફ્લો-વાય indica al navegador qué hacer con el contenido que rebasa elemento por su બોર્ડે ચડિયાતું અને નીચું. Cuando un bloque tiene más contenido del que cabe en su altura definida (o máxima), este ajuste si el contenido se recorta, se hace desplazable o se deja visible fuera del recuadro.

Conviene recordar su relación con su “hermana” હોરિઝોન્ટલ: ઓવરફ્લો-એક્સ નિયંત્રણ લોસ લેટેરેલ્સ izquierdo y derecho, mientras que overflow-y se centra en arriba y abajo. Y, por supuesto, la propiedad abreviada ઓવરફ્લો permite establecer ambos ejes a la vez con uno o dos valores.

સિન્ટેક્સિસ વાય વેલોરેસ એડમિટિડોસ

સીધા સ્વરૂપમાં, ઓવરફ્લો-વાય એસેપ્ટા લોસ વેલોરેસ છુપાયેલ, સ્ક્રોલ, ઓટો વાય દૃશ્યમાન; desde especificaciones modernas también existe ક્લિપ. Puedes declararla así:

/* CSS */
selector {
  overflow-y: hidden | scroll | auto | visible | clip;
}

સંક્ષિપ્તમાં ઉપયોગ કરો ઓવરફ્લો, પુએડેસ પાસર યુનો ઓ ડોસ વેલોરેસ. કોન અન વીરતા, સે એપ્લિકા એ એમ્બોસ ઇજેસ; કોન ડોસ વેલોરેસ, અલ પ્રાઇમરો કોરસપોન્ડ એ ઓવરફ્લો-એક્સ (આડી) અને બીજા ક્રમે ઓવરફ્લો-વાય (ઊભી):

/* Un solo valor, aplica a X e Y */
.container { overflow: auto; }

/* Dos valores: overflow-x overflow-y */
.panel { overflow: hidden auto; }

સિગ્નિફિકડો ડેટાલાડો ડી કેડા વીર

Es facil quedarse en la superficie, pero cada palabra clave encierra un comportamiento específico, y algunos incluyen reglas de accesibilidad y rendimiento importantes.

  • દૃશ્યમાન (બહાદુરી દ્વારા ખામી): el contenido no se recorta y puede sobresalir más allá del área de padding del elemento. એલિમેન્ટો કોઈ સે convierte en contenedor de desplazamiento; útil si no quieres limitar el contenido, pero puede provocar solapamientos con otros componentes.

  • છુપાયેલા: el contenido se recorta en el borde del padding; નો સે મ્યુસ્ટ્રેન બારાસ ડી ડેસપ્લેઝામિએન્ટો. El contenido sigue existiendo en el flujo interno, pero no es visible fuera del área. Aunque el usuario no pueda hacer સ્ક્રોલ મેન્યુઅલ, sí puede desplazarse de forma programática (por ejemplo, con scrollTop o desplazando el foco), de modo que el elemento se considera contenedor de desplazamiento.

  • ક્લિપ: રેકોર્ટા એલ કન્ટેનિડો એન એલ ઓવરફ્લો ક્લિપ એજ, વ્યાખ્યાયિત પોર overflow-clip-margin. છુપાયેલ તફાવત, નો પરમિટ ડેસ્પ્લેઝામિએન્ટો, ની મેન્યુઅલ ની પ્રોગ્રામેટિકો. No crea un nuevo contexto de formateo por sí mismo; si necesitas aislar el flujo (como haría auto/scroll/hidden), combínalo con display: flow-root. Úsalo cuando quieras un corte tajante sin scroll ni “resquicios”.

  • સ્ક્રોલ: સામગ્રીનો રેકોર્ડ siempre se muestran barras de desplazamiento en el eje al que aplique, haya o no desbordamiento real. Esta constancia evita que las barras aparezcan y desaparezcan cuando el contenido fluctúa; ten en cuenta que, aun así, al imprimir puede que el contenido desbordado se incluya según el motor de impresión.

  • ઓટો: સ્ક્રોલ જેવું, પરંતુ solo añade barras cuando son necesarias. Si el contenido cabe, el resultado visual se aproxima a visible, pero el elemento ya actúa como contenedor de desplazamiento y además establece un nuevo contexto de formateo por motivos de rendimiento y reflujo con elementos flotantes.

Matices esenciales que cambian el resultado

Hay cinco detalles que no conviene pasar por alto y que, en la práctica, marcan la diferencia: las dimensiones, el contexto de formateo, la interacción entre ejes, la impresión y el soporte de desplazamiento programático.

Para que el desbordamiento vertical tenga efecto real, el bloque debe tener અલ્ટુરા (ઊંચાઈ) અથવા અલ્ટુરા મેક્સિમા (મહત્તમ-ઊંચાઈ) definidas; si trabajas en términos lógicos, usa બ્લોક-કદ અથવા મહત્તમ-બ્લોક-કદ. પેરા એસ્કેનરિયોસ ડાયનામિકોસ, એપ્રેન્ડે એ obtener la altura de un elemento. En el eje horizontal ocurre lo propio con પહોળાઈ/મહત્તમ-પહોળાઈ o ઇનલાઇન-કદ/મહત્તમ-ઇનલાઇન-કદ; otra opción para forzar el desbordamiento en línea es ખાલી જગ્યા: નાઉરેપ.

અલ એલેગીર ક્યુઅલક્વીઅર વીરતા ડિસ્ટન્ટો ડી દૃશ્યમાન અને ક્લિપ ઓવરફ્લો/ઓવરફ્લો-વાય માટે, એલિમેન્ટો ક્રિએ અન ન્યુવો સંદર્ભો ડી ફોર્મેટો ડી બ્લોક. Esto evita que, por ejemplo, un float vecino reempaquete el contenido en cada paso de scroll, algo que degradaría el rendimiento al desplazarse.

Hay también reglas de interacción entre ejes que sorprenden la primera vez: si estableces દૃશ્યમાન અને અનઇજે y en el otro usas un valor que no sea visible ni clip, ese ઓટો જેવી દેખાતી ક્રિયા. અસિમિસ્મો, સી પોન્સ ક્લિપ એન અન ઈજે y en el otro no es visible ni clip, el ક્લિપ છુપાવેલી જેવી લાગે છે; conviene conocerlo para evitar resultados inesperados.

En la práctica diaria, mucha gente observa que al aplicar સ્ક્રોલ કરો અથવા ઓટોમેટિક રીતે બહાર નીકળો, એલ એલિમેન્ટો પાસ એ સેર અન સ્ક્રોલ કન્ટેનર y ciertas acciones (como pseudo-elementos que sobresalen) pueden activar también el desplazamiento en el otro eje si no se controla bien. Es un comportamiento coherente con la especificación y los motores de renderizado actuales.

ઉદાહરણ રેપિડો: ફિજર લા અલ્ટુરા વાય એક્ટીવાર એલ સ્ક્રોલ વર્ટિકલ

Una demostración típica consiste en acotar la altura de un bloque de texto y permitir que el exceso se desplace verticalmente. આ કિસ્સામાં, ઓવરફ્લો-વાય: ઓટો añade la barra solo cuando haga falta.

<div class="caja">
  <p>Texto largo...</p>
  <p>Más texto...</p>
</div>

.caja {
  max-height: 220px;
  padding: 12px;
  border: 1px solid #ccc;
  overflow-y: auto;   /* barra vertical solo si es necesaria */
  overflow-x: hidden; /* evitamos scroll horizontal accidental */
}

વિગતોમાં સુધારો: ઓવરફ્લો-એક્સ: છુપાયેલ પૂરક અને ઓવરફ્લો-વાય para impedir que vibraciones de layout, sombras o pseudo-elementos provoquen una barra horizontal indeseada.

જાવાસ્ક્રિપ્ટ પર નિયંત્રણ y desplazamiento

Cuando el contenedor es desplazable (સ્વતઃ, સ્ક્રોલ o incluso hidden), puedes mover el contenido por código con propiedades y métodos estándar como Element.scrollTop y Element.scrollTo(). Esto permite, por ejemplo, llevar el foco visual a un ancla interior o simular un salto al final de la lista.

// Desplazar 200px hacia abajo
const panel = document.querySelector('.panel');
panel.scrollTop = 200;

// O ir con precisión a una posición
panel.scrollTo({ top: 0, behavior: 'smooth' });

Hay una exepción explicita: si usas ઓવરફ્લો: ક્લિપ, વપરાશકર્તા એજન્ટ કોઈ પરમિટ desplazamiento programático; el contenido fuera del borde de clip no es accesible ni con el ratón ni desde JavaScript.

એક્સેસિબિલિડેડ: ટેક્લાડો, ફોકો વાય લેક્ટર્સ ડી પેન્ટાલા

Un área desplazable no siempre es ફોકસેબલ પોર ટેક્લાડો, así que el usuario que navega sin ratón puede quedarse sin forma de desplazarla. En Firefox y en Chrome 132 o superior, los contenedores de scroll ખામીયુક્ત માટે ધ્યાન કેન્દ્રિત કરવા યોગ્ય છે; en otros navegadores, añade tabindex="0" અલ કન્ટેનેડર.

અહોરા બિએન, સી આનો પરિચય આપે છે ટેબ સ્ટોપ a ciegas, un lector de pantalla puede llegar a la región sin contexto. પેરા મિટિગારલો, અસિના અન રોલ એઆરઆઈએ એડેક્યુઆડો (ઉદાહરણ તરીકે, role="region") y proporciona un સુલભ નામો કોન aria-label o aria-labelledby. યુન શિષ્ટાચાર ક્લેરો મેજોરા લા નેવેગેશન અસિસ્ટિડા પાપ બલિદાન યુસેબિલિડેડ.

ઓવરફ્લો-x y ઓવરફ્લો-y: cómo se combinan

લા પ્રોપિએડ એબ્રેવિડા ઓવરફ્લો permite establecer ambos ejes a la vez con uno o dos valores; cuando especificas dos, el primero es para ઓવરફ્લો-એક્સ અને બીજા માટે ઓવરફ્લો-વાય. Esto facilita casos como evitar la barra horizontal a la vez que permites સ્ક્રોલ વર્ટિકલ.

/* Evita barra horizontal, permite scroll vertical si hace falta */
.contenedor { overflow: hidden auto; }

Como recordatorio rápido, los valores disponibles para configurar el desbordamiento son: દૃશ્યમાન, છુપાયેલા, ક્લિપ, સ્ક્રોલ y ઓટો. વિદ્યાર્થીઓનું સ્તર, ઓવરફ્લો-એક્સ gobierna el flujo હોરિઝોન્ટલ y ઓવરફ્લો-વાય el ઊભી, y puedes combinarlos según convenga.

“ક્લિપ એજ” અને ઓવરફ્લો-ક્લિપ-માર્જિન

જો તમે પસંદ કરો છો ઓવરફ્લો: ક્લિપ (o solo en el eje Y), el recorte se realiza en el denominado borde de clip de desbordamiento. Ese borde puede extenderse más allá del padding gracias a overflow-clip-margin, શું સ્વીકાર્યું લંબાઈ para dejar “aire” antes de recortar.

.tarjeta {
  overflow-y: clip;              /* cortar sin permitir scroll */
  overflow-clip-margin: 8px;     /* recorta 8px por fuera del padding */
}

યાદ રાખો કે ક્લિપ નો ક્રિએ અન ન્યુવો સંદર્ભો ડી ફોર્મેટિયો. Si necesitas ese aislamiento (por ejemplo, para gestionar floats o contener margenes colapsados), combina clip con ડિસ્પ્લે: ફ્લો-રુટ y así consigues el mismo efecto de contención que aportan auto/scroll/hidden.

Cuándo necesitas dimensiones explicitas

Para que el recorte o el scroll aparezcan de verdad, el elemento necesita una ઉચ્ચ કક્ષાનું બાંધકામ (ઊંચાઈ અથવા મહત્તમ-ઊંચાઈ) en el eje de bloque, o su equivalente lógico બ્લોક-કદ/મહત્તમ-બ્લોક-કદ; si no, el contenedor crecerá con el contenido y el desbordamiento no se activará.

લેઆઉટ હોરિઝોન્ટલ્સ (ઉદાહરણ તરીકે, કેરોયુસેલ્સ), વ્યાખ્યાયિત કરો પહોળાઈ/મહત્તમ-પહોળાઈ o ઇનલાઇન-કદ/મહત્તમ-ઇનલાઇન-કદ પેરા ફોરઝાર અલ ડેસબોર્ડિમેન્ટો એન અલ ઇજે એક્સ; también puedes usar ખાલી જગ્યા: નાઉરેપ para impedir los saltos de Línea y provocar que el contenido exceda el ancho disponible.

Evitar la barra horizontal por pseudo-elementos o sombras

અન કેસો રીઅલ મ્યુ રીઢો: અન સ્યુડો-એલિમેન્ટો ::પછી ક્યુ ફ્લોટા હેસિયા લા ડેરેચા, ઓ ઉના સોમ્બ્રા અલર્ગડા, સોબ્રેપાસા અલ કોન્ટેનેડોર વાય સક્રિય લા બારા આડી en un elemento que ya tiene overflow-y. Esto sucede porque, al convertirse en contenedor de scroll, el motor considera el área desbordada para el eje opuesto.

લાક્ષણિક ઉકેલો: એપ્લિકા ઓવરફ્લો-એક્સ: છુપાયેલ en el contenedor desplazable; કંટ્રોલ અલ તામાનો વાય પોઝિશન ડેલ સ્યુડો-એલિમેન્ટો (p. ej., con પરિવર્તન en lugar de positión absoluta si procede); o acota કોન ક્લિપ/ક્લિપ-પાથ si buscas un recorte tajante. Cualquiera de estas estrategias evita el સ્ક્રોલ આડી indeseado ઊભી રીતે બલિદાન આપવું.

Demostración de resultados con cada પરાક્રમ

El siguiente bloque muestra cómo cambian la visibilidad y las barras con los distintos valores de overflow-y, todos con la મિસ્મા અલ્ટુરા મેક્સિમા પેરા ફોરઝાર અલ ડેસબોર્ડિમેન્ટો વર્ટિકલ:

<div class="demo visible">Contenido largo...</div>
<div class="demo hidden">Contenido largo...</div>
<div class="demo clip">Contenido largo...</div>
<div class="demo scroll">Contenido largo...</div>
<div class="demo auto">Contenido largo...</div>

.demo {
  max-height: 140px;
  padding: 10px;
  margin-bottom: 12px;
  border: 1px solid #bbb;
}
.visible { overflow-y: visible; }
.hidden  { overflow-y: hidden; }
.clip    { overflow-y: clip; }
.scroll  { overflow-y: scroll; }
.auto    { overflow-y: auto; }

આ ધ્યાન માં રાખો siempre muestra la barra વર્ટિકલ સ્ક્રોલ કરો, mientras que auto solo lo hace cuando el texto excede la altura. En hidden, el contenido sobrante no se ve pero sigue estando ahí; en clip, directamente no existe una vía de desplazamiento, ni si quiera con código.

છાપ y contenido desbordado

Un detalle menos conocido: con ઓવરફ્લો: સ્ક્રોલ, algunos motores de impresión pueden acabar imprimiendo el contenido desbordado aunque no quepa en pantalla. પીડીએફ અથવા પેપલની નિકાસનો વિચાર કરો, પ્રીફાયર્સ નક્કી કરો છુપાયેલા અથવા તો ક્લિપ પેરા એવિટાર સેલિડાસ ઇનસ્પેરાડાસ.

entre navegadores compatibilidad

ગુણધર્મો ઓવરફ્લો, ઓવરફ્લો-x y ઓવરફ્લો-y gozan de soporte sólido en los navegadores modernos desde hace muchas versiones. એલ શૌર્ય ક્લિપ વાય સુ કમ્પેનેરા overflow-clip-margin pertenecen a especificaciones más recientes, pero su વાસ્તવિક રીતે વ્યાપકપણે અપનાવવું y crece con cada lanzamiento; comprueba las matrices de compatibilidad si apuntas a entornos antiguos.

En cuanto al foco de contenedores desplazables, recuerda la peculiaridad: ફાયરફોક્સ અને ક્રોમ 132+ los hacen focuseables por defecto; para el resto, añade ટેબઇન્ડેક્સ=”0″ મેન્યુઅલમેન્ટ y અન rol/nombre સુલભ અનુભવ માટે સુસંગત છે.

બ્યુનાસ પ્રેક્ટિસ ડી મેક્વેટાસિઓન

No todo es poner una barra y listo: combina propiedades para prevenir desplazamientos indeseados y ganar en estabilidad visual. Aquí van unas pautas que funcionan muy bien en producción.

  • પરિમાણો વ્યાખ્યાયિત કરો: sin height/max-height o block-size, el contenedor crecerá y no verás el efecto de overflow-y.

  • ઓવરફ્લો-એક્સ ઉમેરવું: છુપાયેલું cuando overflow-y, salvo que necesites belt-and-braces horizontales નો ઉપયોગ કરે છે. Evitas barras laterales provocadas por sombras, bordes o pseudo-elementos.

  • સ્ક્રોલને ઓટો ફ્રન્ટ કરો si quieres que la barra aparezca solo cuando haga falta, y scroll si buscas dimensiones estables de layout sin “saltos” por aparicion/desaparición de scrollbars.

  • યુએસએ ક્લિપ cuando quieras recorte duro (sin rutas de desplazamiento), y combínalo con display: flow-root si necesitas contención del flujo.

DOM y APIs útiles સાથે સંબંધ

જાવાસ્ક્રિપ્ટમાં, DOM એક્સપોન ઓવરફ્લોY como propiedad de estilo, y puedes inspectionar/ajustar el estado del elemento: element.style.overflowY y getComputedStyle(element).overflowY. Además, para desplazar contenidos usa સ્ક્રોલટોપ y સ્ક્રોલ ટુ(), salvo con clip donde no hay scroll de ningún tipo.

const panel = document.querySelector('.panel');
panel.style.overflowY = 'auto';
if (getComputedStyle(panel).overflowY !== 'visible') {
  panel.scrollTo({ top: panel.scrollHeight, behavior: 'smooth' });
}

Si trabajas con enlaces internos, recuerda que ટેબ્યુલર હેસિયા અન એલિમેન્ટો ઓક્યુલ્ટો dentro de un contenedor hidden/auto puede hacer que el navegador આપમેળે સ્ક્રોલ કરો para ponerlo en vista; es una forma legítima de desplazamiento programático, útil para mejorar la navegación con teclado.

તબલા માનસિક rápida de opciones

પેરા ટેનેર્લો ક્લેરો ડી અન વિસ્ટાઝો: દૃશ્યમાન ડેજા ક્યુ ટોડો સોબ્રેસાલ્ગા; છુપાયેલા recorta y permite scroll programático; ક્લિપ પરવાનગી વગરનો રેકોર્ડ સ્ક્રોલ; સ્ક્રોલ recorta pero siempre muestra barras; y ઓટો સોલો મ્યુસ્ટ્રા બારાસ કુઆન્ડો આગળ વધો. Y recuerda que ફોર્મેટના સંદર્ભમાં કોઈ દૃશ્યમાન/ક્લિપ નથી, મહત્વપૂર્ણ પેરા રેન્ડિમેંટો કોન ફ્લોટ્સ.

Ejemplos de combinación por ejes

Dos patrones que verás constantemente: ઊભી સ્ક્રોલ કરવાની મંજૂરી આપો sin barra horizontal, y recortar en un eje con clip mientras el otro se desplaza automáticamente.

/* Scroll vertical, sin horizontal */
.lista {
  max-height: 300px;
  overflow-x: hidden;
  overflow-y: auto;
}

/* Recorte duro en X, desplazamiento automático en Y */
.panel {
  overflow-x: clip;
  overflow-y: auto;
  display: flow-root; /* contén el flujo si lo necesitas */
}

Ten presentes las reglas de interacción: si un eje usa un valor distinto de visible/clip y el otro pone visible, ese visible se એલેવા એ ઓટો. Con clip sucede algo parecido: si el otro eje no es visible ni clip, el ક્લિપ એક્ટ્યુઆ કોમો છુપાયેલ છે.

સામાન્ય ઉપયોગના કિસ્સાઓ

આધુનિક ઇન્ટરફેસોમાં, ઓવરફ્લો-વાય es imprescindible para chatboxes, paneles de filtros, menús largos, logs o listados con altura acotada. Se complementa con cabeceras pegajosas y footers dentro del contenedor, y suele acompañarse de ઓવરફ્લો-એક્સ: છુપાયેલ પેરા એવિટાર બારાસ લેટરેલ્સ.

En diseños con tarjetas o modales, puedes alternar entre ઓટો (પેરા નો મોસ્ટર લા બરા સી નો હાસે ફાલ્ટા) વાય સ્ક્રોલ (પેરા એસ્ટેબિલાઈઝર અલ એન્કો ક્યુઆન્ડો એપેરેસેરિયા લા બેરા દુરાન્ટે લા કાર્ગા). સિ અલ મોડલ ડેબે રેકોર્ટર પાર્ટેસ ડેકોરેટિવસ, ક્લિપ evita interacciones y ahorra cálculos.

સામાન્ય ભૂલો અને તેમને કેવી રીતે ટાળવું

El fallo más repetido es declarar ઓવરફ્લો-વાય સિન અલ્ટુરા y esperar una barra que nunca llega; ઊંચાઈ અથવા મહત્તમ-ઊંચાઈ/બ્લોક-કદ વ્યાખ્યાયિત કરો. El segundo es olvidarse del eje horizontal: હમણાં જ વેલોરા ઓવરફ્લો-એક્સ en paralelo, sobre todo si usas sombras o pseudo-elementos.

કોઈ પણ બાબત ધ્યાનમાં લેવામાં આવતી નથી સુલભતા: contenedores desplazables sin foco de teclado o sin nombre accessible complican la vida a usuarios con lector de pantalla. અનાડે ટેબઇન્ડેક્સ, રોલ વાય એરિયા-લેબલ cuando no sea focuseable por defecto.

રિકરસોસ રિલેસિઓનાડોસ

Si quieres ampliar, revisa el tutorial General de CSS માં ડિઝાઇન વાય લા રેફરન્સિયા ડેલ overflowY માટે DOM તત્વો. Estas páginas cubren desde fundamentos hasta peculiaridades finas de implementación y compatibilidad.

Dominar overflow-y implica entender qué recorta, cuándo se desplaza, cómo interactúa con el eje opuesto y que efecto tiene en el contexto de formateo; con las pautas de dimensiones, accesibilidad y combinación con overflow-x, es sencillo lograr paneles fluidos, sin barras imprevistas y con un desplazamiento suave tanto para usuarios como para scripts.

સંબંધિત લેખ:
ઉકેલાયેલ: તત્વ સંદર્ભની ઊંચાઈ મેળવો
સંબંધિત પોસ્ટ્સ: