Frames
Las frames es una técnica para subdividir la pantalla
del visor en diferentes ventanas. Cada una de estas ventanas se podrá manipular
por separado, permitiéndonos mostrar en cada una de ellas una página Web
diferente. Esto es muy útil para, por ejemplo, mostrar permanentemente en una
ventana los diferentes contenidos de nuestra página, y en otra ventana mostrar
el contenido seleccionado.
Para definir las diferentes subventanas o frames se
utilizan las directivas <FRAMESET>
</FRAMESET> y <FRAME>.
La directiva <FRAMESET>
indica como se va a dividir la ventana principal. Pueden incluirse varias
directivas <FRAMESET>
anidadas con el objeto de subdividir una subdivisión. Los parámetros de <FRAMESET> son rows y cols en función de si la división de
la pantalla se realiza por filas (rows) o columnas (cols). Los parámetros rows y cols se acompañan de un grupo de
números que indican en puntos o en porcentaje el tamaño de cada una de las
subventanas. En caso de utilizar rows los tamaños de las subventanas se entienden
indicados de arriba a abajo, es decir, el primer valor será el asignado a la
ventana superior, el segundo a la ventana inmediatamente inferior, etc. En el
caso de cols
los tamaños se aplican de izquierda a derecha.
Ejemplos
|
Resultado
|
<FRAMESET
rows =
"25%,50%,25%">
|
Crea tres subventanas
horizontales, la primera ocupará un 20% de la ventana principal, la segunda
un 50% y la tercera un 25%.
|
<FRAMESET
cols =
"120,*,100">
|
Crea tres subventanas
verticales, la primera y la tercera tendrán un "ancho" fijo de 120
y 100 puntos respectivamente. La segunda ocupará el resto de la ventana
principal (*).
|
<FRAMESET
cols =
"15%,*">
<FRAMESET rows =
20%,*">
|
En este caso "anidamos" dos directivas. La
primera divide la ventana principal en dos subventanas
verticales, la primera ocupa un 15% de la ventana principal y la segunda el
resto. La segunda directiva vuelve a subdividir la primera subventana creada anteriormente, pero esta vez en dos subventanas horizontales, la superior ocupará un 20% de
la subventana, y la inferior el resto.
|
La
directiva <FRAME> indica las
propiedades de cada subventana. Es necesario indicar
una directiva <FRAME> para
cada subventana creada. Los parámetros de <FRAME> son:
name = "nombre"
Indica el
nombre por el que nos referiremos a esa subventana.
src = "URL"
La ventana
mostrará en principio el contenido del documento HTML que se indique.
marginwidth = num.
Indica el
margen izquierdo y derecho de la subventana en
puntos.
marginheight = num
Indica el
margen superior e inferior de la subventana en
puntos.
scrolling = "yes / no / auto"
Indica si se
aplica una barra de desplazamiento a la subventana en
el caso de que la página que se cargue en ella no quepa en los límites de la subventana. el valor "yes"
muestra siempre la barra de desplazamiento, "no" no la muestra nunca (la zona de la página que no
quepa en la subventana no la veremos), y "auto" la muestra solo en caso de que
sea necesario para poder ver la página.
noresize
Si se indica
este parámetro, el usuario no podrá "redimensionar" las subventanas con el visor. Un usuario que este viendo una
pagina con frames puede redimensionarlas
seleccionando un borde de la subventana con el cursor
y desplazándolo.
border = num.
Indica el
"borde" que separara esta frame de la
siguiente. Si se indica cero (0) no se mostrara borde entre las frames, consiguiendo un efecto muy elegante, siempre y
cuando el "fondo" de todas las frames sea
el mismo, o sean colores solidos.
Los visores que no soportan la característica de
subventanas, no mostrarán nada de lo indicado con estas directivas. Es por ello
que existe una directiva llamada <NOFRAMES>
</NOFRAMES>. Todo los indicado entre esta directiva será lo
que muestren los visores sin capacidad para visualizar Frames. Los visores que
soporten Frames obviaran las directivas incluidas entre <NOFRAMES> </NOFRAMES>.
Si su visor puede visualizar Frames tendrá en estos
momentos la pantalla dividida en dos zonas independientes, en la izquierda verá
el índice de materias de este manual, y en la derecha estará viendo la sección
del manual que haya seleccionado. En otro caso simplemente verá la sección del
manual.
La
definición de las Frames debe ir antes de la definición del cuerpo de documento
(<BODY>).
Veamos
un ejemplo completo de Frames:
<HTML>
<HEAD>
<TITLE>Pagina con Frames</TITLE>
</HEAD>
<FRAMESET
cols = "15%,*">
<!-- Dos subventanas verticales, la de la izquierda con un 15% de la
pantalla, la de la derecha el resto. -->
<FRAMESET rows = "35%,*">
<!-- Dos subventanas horizontales
dentro de la subventana izquierda. -->
<FRAME name =
"upd" src
= "update.htm" scrolling = "auto">
<!-- La subventana horizontal superior izquierda con el nombre
"upd" y muestro el documento update.htm
-->
<FRAME name =
"menu" src
= "menu1.htm" scrolling = "auto">
<!-- La subventana horizontal inferior izquierda con el nombre
"menu" y muestro el documento menu1.htm -->
</FRAMESET>
<!—Se cierra la definicion de las subventanas horizontales de la ventana de la izquierda
-->
<FRAME
name = "home" src
= "home.htm" scrolling =
"auto">
<!-- Llamo a la subventana vertical derecha con el nombre "home" y muestro el documento home.htm -->
<NOFRAMES>
<!-- Indico las
órdenes para aquellos visores que no soporten Frames
-->
<BODY>
SU VISOR NO MUESTRA FRAMES. Pulse <A href=
"home.htm"> AQUI </A> para ir a la página sin Frames.
</BODY>
</NOFRAMES>
</FRAMESET>
<!-- Cierro la definición de las subventanas
verticales -->
</HTML>
Al usar Frames, nos encontramos con un problema.
Cuando queramos mostrar una página Web debemos indicarle al visor en que subventana queremos que se muestre. Por defecto se mostrará
en la ventana donde se encuentre el enlace. Para poder escoger la subventana de destino del Hyperenlace
se añade un nuevo parámetro a la directiva <A
href= > </A>. Este parámetro se
llama target
y puede tener los siguientes valores:
target = "nombre_ventana"
Muestra el Hyperenlace en la ventana cuyo nombre se indica.
target = "_blank"
Abre una nueva
copia del visor y muestra el Hyperenlace en ella. (Si
usamos Netscape esto provoca que tengamos funcionando dos copias del programa).
target = "_self"
Se muestra el Hyperenlace en la subventana
activa.
target = "_parent"
El Hyperenlace se muestra en el <FRAMESET> definido
anteriormente al actual. Si no hay ningún <FRAMESET> anterior se muestra
a pantalla completa suprimiendo todas las subventanas
de la pantalla.
target = "_top"
Suprime todas
las subventanas de la pantalla y muestra el Hyperenlace a pantalla completa.
Ejemplos
|
Resultado
|
<A href= "http://www.microsoft.com/" target = "_blank">
|
Muestra la pagina de Microsoft en una nueva copia
del visor
|
<A href= "http://www.ibm.com/" target = "home">
|
Muestra la pagina de IBM en la subventanna
llamada "home"
|
<A href= "http://www.yahoo.com/" target = "_top">
|
Muestra la pagina del buscador Yahoo
a pantalla completa
|
|