feed twitter facebook LinkedIn facebook

HTML » Tres Frames

Marzo 24, 2007 por Víctor Cuervo . 18369 visitas 7 Comentarios Imprimir Imprimir

La idea de este ejemplo es ver cómo montar una página que contenga tres frames.

La disposición de la página será la siguiente: en el lado izquierdo tendremos un frame de ancho 20% del total, en el lado derecho tendremos dos frames en disposición horizontal. El superior ocupará el 90% del espacio, mientras que el inferior ocupará el 10% restante.

Quedándonos la siguiente disposición:

Frame

de la Izquierda

Frame Superior

Frame
Inferior

Lo primero que tenemos que hacer es definir la página que va a contener la división de los frames y posteriormente cada una de las tres páginas que son el contenido de los respectivos frames.

La página que define el frame utilizará la etiqueta FRAMESET para definir la división. Para definir las divisiones hay que ir de la más general a la más concreta. A si que en nuestro caso la primera división es en columnas y la segunda es en filas, para la columna de la derecha.

A si que la primera división se definiría con el atributo cols de la siguiente forma

<FRAMESET COLS="20%,*"></FRAMESET>

Como puedes ver, cuando queremos indicar que el tamaño de un frame es el resto, utilizamos el comodín *.

Una vez definida la división hay que indicarle el contenido de los dos primeros frames. Para el primero, como ya es un contenido fijo utilizaremos la etiqueta FRAME, la cual, mediante el parámetro src indica el contenido de la misma de la siguiente forma:

<FRAME SRC="izquierda.htm" NAME="izquierda"/>

Es bueno que utilicemos el atributo name para luego poder redirecionar los enlaces a uno u otro frame.

En el caso del segundo frame, como no es un contenido fijo, sino que es otra división, tendremos que utilizar nuevamente la etiqueta FRAMESET. Pero en este caso, con una división en filas

<FRAMESET ROWS="*,10%"></FRAMESET>

Como nota final cabe indicar que todavía nos podemos encontrar navegadores que no entiendan de frames (ya es raro, antes era algo más habitual). A si que, para estos casos, es bueno utilizar la etiqueta NOFRAMES con un contenido de texto avisando de que su navegador no soporta frames.

<NOFRAMES>
 <BODY>
  Su navegador no soporta frames
 </BODY>
</NOFRAMES>

Visualizar el ejemplo | Descargar el código

tags:

Artículos relacionados:

7 comentarios »

Redifusión RSS de los comentarios de la entrada. TrackBack URI

  1. JESSICA JULIETH DELGADO POVEDA
    Junio 4, 2007 #

    deberian poner el codigo en si todo para una mejor atencion al usuario

  2. lineadecodigo
    Junio 4, 2007 #

    Hola Jessica,

    El código lo tienes en el enlace “Descargar el código” de la parte de abajo del artículo.

    ¿Es esto lo que buscabas?

  3. Kmi
    Diciembre 1, 2007 #

    q hay que poner en el *?

  4. apg
    Diciembre 17, 2007 #

    Hola, hablando de frames, he seguido el artículo y ahora se me presenta el siguiente interrogante:
    ¿Puedo actualizar dos frames al pulsar sobre un enlace alojado en uno de ellos?

  5. lineadecodigo
    Diciembre 23, 2007 #

    @kimi,

    El asterisco (*) significa “el resto”. Es decir, al poner:
    <FRAMESET ROWS=”*,10%”></FRAMESET>

    Es lo mismo que si pusiésemos:
    <FRAMESET ROWS=”90%,10%”></FRAMESET>

    Digamos que nos permite cierta comodidad a la hora de codificar.

  6. chuchit0o
    Enero 9, 2008 #

    ¿Cuanto tardan en responder un mensaje?

  7. chuchit0o
    Enero 9, 2008 #

    veo ke tardan vastante, vueno kiziera ke me respondieran, komo funciona la propiedad en una liga, para una imagen diferente en mi frame superior, y un rezultado en el centro, i mi 3er frame ez el menu inferior izkierdo ke ezta al lado de la frame de rezultado. ¡me podrian ayudar!

Deje un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*