Comunidad de diseño web y desarrollo en internet online

Ayuda con iframes

Citar            
MensajeEscrito el 02 Sep 2012 07:57 pm
Antes que nada dar a CL mi enhorabuena por el trabajo que hace, ya que hasta dia de hoy no me ha hecho falta registrarme para preguntar ninguna duda y he aprendido mucho de aqui.

Ahora mi consulta:
Quiero hacer una especie de barra de navegacion en la parte de arriba de la pagina html y que, en lugar de redirigirte hacia el enlace, te carge el contenido en un div o iframe que está abajo de esta misma. El problema viene a que no me acuerdo para nada como se hacía. He buscado formas de solucionarlo pero no veo ninguna solución factible. Alguien me podría echar una mano?

Este es el código que tengo:

Código HTML :

<html>
<head>
<title>Prueba 1</title>

<style type="text/css">
#navegador ul{
   list-style-type: none;
   text-align: center;
}
#navegador li{
   display: inline;
   text-align: center;
   margin: 0 10px 0 0;
}
#navegador li a {
   padding: 2px 7px 2px 7px;
   color: #666;
   background-color: #eeeeee;
   border: 1px solid #ccc;
   text-decoration: none;
}
#navegador li a:hover{
   background-color: #333333;
   color: #ffffff;
}

#contenedor {
   visibility: visible;
   position: center;
}
   </style>
</head>
<body>
   <div id="navegador">
      <ul>
         <li><a href="#">Menu 1</a></li>
         <li><a href="#">Menu 2</a></li>
         <li><a href="#">Menu 3</a></li>
         <li><a href="#">Menu 4</a></li>
      </ul>
   </div>
   <div id="contenedor">
      <iframe src="http://www.google.es/" height="1280" width="1024"></iframe>
   </div>
</body>
</html> 


Quiero que al darle a "Menu 1" el div "contenedor" cargue Google (Por ejemplo), al darle a Menu 2 cargue CristalLab (Por ejemplo) en el lugar donde cargaba Google.

Gracias de antemano ^^

Por Riiuk

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 02 Sep 2012 09:05 pm
Asii !! :P

Código HTML :

<html> 
<head> 
<script> 
function enlace(url) 
  { 
     ventana.location.href = url; 
  } 
</script> 
</head> 
<body> 
<a href="javascript:enlace('pagina1.html');">Enlac pagina 1</a> 
<a href="javascript:enlace('pagina2.html');">Enlace pagina 2</a> 
<iframe id="ventana" src="pagina.html" scrolling="no" frameborder="0"></iframe> 
</body> 
</html> 


Aun que es mas recomendable que pongas las paginas por separado para mejorar tu SEO u sas htaccess para hacer las "friendly urls"
saudos !

Por dsalcedo

50 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 02 Sep 2012 10:18 pm
Perfecto!!! Es justo lo que buscaba ^^ Muchas gracias.

Ahora me surge otro problema, ese iframe se me pone en un tamaño muy pequeño pero si le pongo un tamaño fijo (por ejemplo; 1280x1024) en las páginas grandes en tamaño me crea 2 scrolls, uno para el iframe en si y otro para la web interna... Hay alguna forma de que dicho iframe se adapte a la web que muestra?

Por Riiuk

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 02 Sep 2012 10:22 pm
NINJA EDIT:

Ya lo he solucionado, pongo la respuesta para quien le pueda interesar en un futuro.

Le he dado un tamaño del 100% x 100% y me creaba un doble scroll horizontal muy molesto.
Para quitar el scroll he puesto en el style del body un overflow: hidden;

De esta forma he conseguido exactamente lo que quería. Una barra de navegación estática que si haces scroll hacia abajo te sigue ^^

Por Riiuk

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 03 Sep 2012 12:23 pm
Lo mismo hubieses logrado con un <div> con position: fixed y no usar el molesto <iframe>.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 03 Sep 2012 03:52 pm
Opto por el <div>, si es comodo tener un iframe pero es más amigable con el contenido, hoy en dia complementando con Javascript supera los limites.

Empieza a trabajar con DIV, te tomará un rato dominarlo (como todo) pero una ves que le tomes cariño, no lo dejarás por nada.

Por elporfirio

Claber

652 de clabLevel

1 tutorial

Genero:Masculino  

FullStack Web Developer

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.