2011-10-26 14 views
8

Tengo un problema al desarrollar una página web.overflow-x: visible; overflow-y: auto; no funciona - ¿esto cumple con los estándares?

Ni Firefox o Internet Explorer presentarán el comportamiento que espero para el siguiente fragmento de código:

<div 
    style="overflow-x: visible; overflow-y: auto; width: 200px; height: 200px; border: 1px solid #F00;"> 
    <div style="width: 300px; height: 300px; background-color: #0F0;">&nbsp;</div> 
</div> 

lo que esperaría sería capaz de ver el contenido que se desborda en el lado x del contenedor div, pero no el contenido que se desborda en la parte inferior (con una barra de desplazamiento para ver más). En cambio, lo que veo es una barra de desplazamiento xy una barra de desplazamiento y.

Nota: una inspección de las propiedades de estilo calculadas en firebug revela que firefox usa overflow-x: auto; para el contenedor.

¿Se espera este comportamiento? Entiendo que hay cierta ambigüedad al solicitar colocar una barra de desplazamiento sobre mi propio contenido (por ejemplo, que mi contenido horizontal pasaría por la barra de desplazamiento vertical, por lo que debería cubrir parte del contenido).

Entonces, ¿el comportamiento que estoy experimentando cumple con los estándares?

Respuesta

18

Bueno, será condenado, decidí comprobar lo CSS (3) especificación tenía que decir acerca de esto, y it dice:

Los valores calculados de 'overflow-x' y 'rebosan y 'son lo mismo que sus valores especificados, excepto que algunas combinaciones con' visible ' no son posibles: si uno se especifica como' visible 'y el otro es ' scroll 'o' auto ', entonces' visible 'es establecer en 'auto'.

Así que, en resumen, sí, lo que estaba experimentando era completamente el comportamiento esperado.

Fuente: CSS basic box model W3C Working Draft 9 August 2007 (justo después del ejemplo)

+3

Eso tiene sentido para mí; ¿Cómo podría usar la barra de desplazamiento si hubiera contenido desbordado encima? – joshnh

+0

Tengo el mismo problema, y ​​utilizo texto destacado a la izquierda de mi contenedor para mostrar los mensajes de error. No estarían en el camino de la barra de desplazamiento vertical si se me permitiera hacerlo ... –

Cuestiones relacionadas