Puede hacer desbordamiento oculta hasta que el ratón está sobre ella, a continuación, hacer que sea automático. Esto es lo que hice ... tenga en cuenta que el relleno de 16 píxeles supone que una barra de desplazamiento tiene 16 píxeles de ancho, y está ahí para que el texto no se vuelva a ajustar cuando aparece la barra de desplazamiento.
div.myautoscroll {
height: 40ex;
width: 40em;
overflow: hidden;
border: 1px solid #444;
margin: 3em;
}
div.myautoscroll:hover {
overflow: auto;
}
div.myautoscroll p {
padding-right: 16px;
}
div.myautoscroll:hover p {
padding-right: 0px;
}
verlo en acción en this fiddle - usted querrá ampliar el lado de la ventana "número" derecho a ver todo el cuadro, o reducir el ancho en el css.
Editar 2014-10-23
En la actualidad existe una mayor variación en la forma de sistemas y navegadores muestran barras de desplazamiento, por lo que puede ser necesario ajustar para su caso mi espacio 16px
. La intención de ese relleno es evitar que el texto vuelva a fluir a medida que la barra de desplazamiento aparece y desaparece.
Algunos sistemas, como las versiones más recientes de Mac OS X (al menos 10.8.x), no muestran las barras de desplazamiento hasta que comienzas a desplazarte al, lo que podría descartar toda esta técnica. Si la barra de desplazamiento no se muestra, es posible que no tenga motivos para ocultarla hasta que pase el mouse, o puede dejar el desbordamiento como auto
o incluso scroll
en lugar de alternarlo.
Gracias por la solución. Lo necesitaba para uno de mi trabajo. Pero tengo un pequeño problema. El relleno de 16 píxeles derecho que has usado cuando no hay una barra de desplazamiento visible y se vuelve 0 al pasar el mouse cuando la barra de desplazamiento está visible. No quiero usar el relleno 16px por algún motivo, así que lo eliminé. La primera vez funciona bien, al pasar el div trae la barra de desplazamiento, pasar el mouse hacia afuera lo quita pero hay un espacio de 16px (supongo) a la izquierda. No sé de dónde viene la brecha. Por favor, encontrar el violín aquí http://jsfiddle.net/9scJE/ –
hice este código para mostrar la barra de desplazamiento, no sé por qué tenía que poner de desplazamiento en lugar de simplemente auto, pero eso es lo que funcionó, sin embargo no está seguro de por qué cuando Sobrevivo el área que solo muestra la barra de desplazamiento cuando me desplazo y no cuando solo coloco el cursor sobre el área div '#myautoscroll { altura máx .: 200 px; overflow-y: hidden; } #myautoscroll: hover { overflow-y: scroll; } ' – nommer