Si nos fijamos en their CSS, utilizan height: 100%
para la iframe
:
iframe#diggiFrame {
color: #666;
width: 100%;
height: 100%;
z-index: 10;
-webkit-box-sizing: border-box;
}
se posicionan por encima de la DiggBar que con una altura de 46px
, por lo que la toma iframe
100% del espacio restante. Utilizan overflow: hidden
en el elemento body
para mantener el iframe
completamente dentro de la altura vertical de la página, en lugar de permitir que la página se desplace. Esto significa que la barra de desplazamiento aparecerá dentro del iframe
, en lugar de para toda la página. Tenga en cuenta que la forma en que funciona DiggBar funciona solo en modo peculiar en Firefox; ver a continuación cómo hacerlo en modo estándar.
body {
padding: 46px 0 0 0;
margin: 0;
background: #fff;
overflow: hidden;
color: #333;
text-align: left;
}
#t {
width: 100%;
min-width: 950px;
height: 46px;
z-index: 100;
position: absolute;
top: 0;
left: 0;
/* overflow: hidden; */
border-bottom: 1px solid #666;
background: #fff url(/App_PermaFrame/media/img/back.gif) repeat-x;
line-height: 1;
}
edición: Para los que no me creen, aquí hay una small example. Para que ocupe todo el espacio, debe configurarlo para que no tenga borde, y necesita <body>
para no tener márgenes.
editar 2: Ah, lo siento, veo de lo que estabas hablando. Necesita el overflow: hidden
en la etiqueta body
para que la barra de desplazamiento funcione de la manera que desee.
edición 3: Parece que usted tiene que estar en modo de caprichos para que esto funcione en Firefox; si incluye una declaración <!DOCTYPE html>
, eso lo pone en modo estándar, y su iframe
resulta demasiado pequeño.
edit 4: Ah, puede hacerlo en modo estándar en Firefox también. Obtuve la respuesta here. Debe configurar la altura en sus elementos <html>
y <body>
en 100%
también.(Tenga en cuenta que el <!DOCTYPE html>
es el doctype para HTML 5, que es un trabajo en progreso; sin embargo, funciona en todos los navegadores modernos para activar el modo estándar).
<!DOCTYPE html>
<html>
<head>
<style type="text/css" media="all">
html, body {
height: 100%
}
body {
margin: 0;
overflow: hidden;
}
#topbar {
height: 50px;
width: 100%;
border-bottom: 1px solid #666
}
#iframe {
height: 100%;
width: 100%;
border-width: 0
}
</style>
</head>
<body>
<div id="topbar">
<h1>This is my fake DiggBar</h1>
</div>
<iframe id="iframe" src="http://www.google.com/"></iframe>
</body>
iframes no funcionan. Inténtalo tú mismo, establece un iframe con alto: 100% y configura su src en http://gooogle.com. No funcionará – KingNestor
La mayoría de las personas terminan recurriendo a javascript para hacer esto, pero falla al intentar hacerlo para un iframe con un src configurado en un sitio a través de un dominio diferente. Tengo curiosidad de cómo hacen esto también. – KingNestor
altura 100% lo expandirá a la altura de la etiqueta del cuerpo, que no es la altura del contenido de iframed y en la mayoría de los casos será demasiado pequeño. – KingNestor