working sirve que para not horizontal div html css overflow

html - sirve - overflow-x: oculto aún puede desplazarse



overflow-x not working (10)

¿Qué hay de establecer el ancho en el cuerpo del contenido y deformar el #container alrededor de #menu_bar y #content_body ?

body div#container div#menu_bar (absolute positioned) div#links div#full_bar div#content_body (relative positioned + padding [#menu_bar height]) ...

Ejemplo de CSS

El problema es:

Tengo un menú de barra de ancho completo, que se crea creando un gran margen a la derecha y a la izquierda. Este margen debe ser recortado por overflow-x: hidden , y es ... sin barras de desplazamiento, todo (visualmente) está bien ...

Pero, si arrastra la página (usando Mac Lion) o se desplaza hacia la derecha, la página muestra una barra enorme, que debería haber sido recortada por overflow-x:hidden .

CSS

html { margin:0; padding:0; overflow-x:hidden; } body { margin: 0 auto; width: 950px; } .full, .f_right { margin-right: -3000px !important; padding-right: 3000px !important; } .full, .f_left { margin-left: -3000px !important; padding-left: 3000px !important; }

Aquí hay un enlace: http://jsfiddle.net/NicosKaralis/PcLed/1/

Tienes que abrir en borrador para ver ... el jsfiddle css de alguna manera lo hace funcionar.

@Krazer

tengo y estructura así:

body div#container div#menu_bar div#links div#full_bar div#content_body ...

el #container es un div centrado y tiene un ancho fijo de 950px, el #full_bar es una barra que se extiende en toda la ventana, de un lado al otro

si pongo el ancho al 100% en #full_bar, obtendrá solo el ancho interior y no el ancho de la ventana


Considere usar max-width para html.

manténganme informado si no funciona.


De la demostración de Weaver''s Offcanvas http://jasonweaver.name/lab/offcanvas/

Ajustar el contenido con:

width: 100%; overflow: hidden;

Esto limita solo el ancho y ha funcionado en ocasiones similares, también ha impedido el desplazamiento durante el arrastre.


El desbordamiento en las etiquetas <body> y <html> funcionó para mí.


Encontré la solución aquí https://.com/a/9399429/622041

Tendrás que poner una #wrapper alrededor de tu contenido. overflow:hidden en el body no funcionará.

#wrapper {position: absolute; width: 100%; overflow-x: hidden}

Y aquí el HTML:

<html> <head> <title></title> </head> <body> <div id="wrapper"> <div class="yourContent"> ... </div> </div> </body> </html>



No creo que haya ninguna forma de evitar el desplazamiento de un elemento sin usar JavaScript. Con JS, sin embargo, es bastante fácil configurar scrollLeft en 0 onscroll.


Pruebe el elemento html de posición fija, pero esto deshabilita el desplazamiento en ambas direcciones.

html { position: fixed; }


Tenía exactamente el mismo problema. Lo resolví poniendo overflow-x: hidden; en el body y html .

html { margin: 0 auto; padding: 0; overflow-x: hidden; } body { margin: 0 auto; overflow-x: hidden; width: 950px; } .full { background: red; color: white; } .full, .f_right { margin-right: -3000px !important; padding-right: 3000px !important; } .full, .f_left { margin-left: -3000px !important; padding-left: 3000px !important; }

<div> <div class="full"> abc </div> </div>


html, body { overflow-x: hidden; width: 100%; }

Resolvió el problema para mí, excepto IE - aún puedes arrastrar el sitio a la derecha si haces un esfuerzo para hacerlo.

Usando overflow: hidden; elimina la barra de desplazamiento vertical, por lo que esta no es una solución.

No pude encontrar una mejor solución usando JavaScript.