it-swarm-es.tech

La temida barra de desplazamiento horizontal del iframe no se puede eliminar en IE?

Tengo un iframe El contenido es más ancho que el ancho que estoy configurando, por lo que el iframe obtiene una barra de desplazamiento horizontal. No puedo aumentar el ancho del iframe, así que solo quiero eliminar la barra de desplazamiento. Intenté establecer la propiedad de desplazamiento en "no", pero eso elimina ambas barras de desplazamiento y quiero la vertical. Intenté configurar overflow-x como "oculto" y eso eliminó la barra de desplazamiento horizontal en ff pero no en IE. triste por mi.

19
mrjrdnthms
scrolling="yes"  horizontalscrolling="no" verticalscrolling="yes"

Pon eso en tu etiqueta iFrame.

No necesita perder el tiempo tratando de formatear esto en CSS.

44
ivor biggun

La barra de desplazamiento no es una propiedad de <iframe>, es una propiedad de la página que contiene. Intenta poner overflow-x: hidden sobre el <html> elemento de la página interna.

25
Jim

Podría intentar poner el iframe dentro de un div y luego usar el div para el desplazamiento. Puede controlar el desplazamiento en el div en IE sin problemas, IE realmente solo tiene problemas con el desplazamiento de iframe. Aquí hay un ejemplo rápido que debería ser el truco.

<html>
    <head>
        <title>iframe test</title>

        <style>         
        #aTest { 
            width: 120px;
            height: 50px;
            padding: 0;
            border: inset 1px #000;
            overflow: auto;
        }

        #aTest iframe {
            width: 100px;
            height: 1000px;
            border: none;
        }
        </style>
    </head>
    <body>
        <div id="aTest">
            <iframe src="whatever.html" scrolling="no" frameborder="0"></iframe>
        </div>
    </body>
</html>
5
Rich Adams

También puede intentar establecer el ancho del cuerpo de la página que se incluye dentro del iframe al 99%.

0
Toby Artisan

Todas estas soluciones no funcionaron para mí o no fueron satisfactorias. Con el DIV desplazable, puede hacer que la barra de desplazamiento horizontal desaparezca, pero siempre tendrá la vertical.

Entonces, para mi sitio donde puedo estar seguro de controlar la altura fija de todos los iframes, esta siguiente solución funciona muy bien. Simplemente oculta la barra de desplazamiento horizontal con un DIV :)

    <!-- This DIV is a special hack to hide the horizontal scrollbar in IE iframes -->
<!--[if IE]>
<div id="ieIframeHorScrollbarHider" style="position:absolute; width: 768px; height: 20px; top: 850px; left: 376px; background-color: black; display: none;">
</div>
<![endif]-->
<script type="text/javascript">
  if (document.getElementById("idOfIframe") != null && document.getElementById("ieIframeHorScrollbarHider") != null)
  {
    document.getElementById("ieIframeHorScrollbarHider").style.display = "block";
  }
</script>
0
Lou
<iframe style="overflow:hidden;" src="about:blank"/>

debería funcionar en IE. IE6 tuvo problemas para soportar overflow-x y overflow-y.

Otra cosa a tener en cuenta es que el borde de IE en el iframe solo se puede eliminar si establece el atributo "frameborder" en camelCase.

<iframe frameBorder="0" style="overflow:hidden;" src="about:blank"/>

sería bueno si pudieras diseñarlo correctamente con CSS pero no funciona en IE.

0
scunliffe