Blog de Daiyiro

#BlogDeDaiyiro es sobre todo Bricolajes de Electrónica/Informática. ¡^-^¡

LO NUEVO:

12.10.13

12 - Edición En HTML - Frames

FRAMES

Los 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 inmediata mente inferior, etc...

En el caso de cols los tamaños se aplican de izquierda a derecha.


EjemplosResultado
<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 respectiva mente. 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.
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 con comentarios :



<HTML&gt
<HEAD&gt
<TITLE&gtPagina con Frames</TITLE&gt
</HEAD&gt
<FRAMESET cols = "15%,*">
<!-- Creo dos subventanas verticales, la de la izquierad ocupa un 15% de la pantalla, la de la derecha el resto. -->
<FRAMESET rows = "35%,*">
<!-- Creo dos subventanas horizontales dentro de la subventana izquierda. -->
<FRAME name = "upd" src = "update.htm" scrolling = "auto">
<!-- Llamo a la subventana horizontal superior izquierda con el nombre "upd" y muestro el documento update.htm -->
<FRAME name = "menu" src = "menu1.htm" scrolling = "auto">
<!-- Llamo a la subventana horizontal inferior izquierda con el nombre "menu" y muestro el documento menu1.htm -->
</FRAMESET>
<!-- Cierro 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&gt
SU VISOR NO MUESTRA FRAMES. Pulse <A href= "home.htm"> AQUI </A> para ir a la página sin Frames.
</BODY&gt
</NOFRAMES>
</FRAMESET>
<!-- Cierro la definición de las subventanas verticales -->
</HTML&gt


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.
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.

EjemplosResultado
<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

1 comentario:

  1. Es complicado lo de los frames, no mucha gente los domina...y tienen sus pros y sus contras.

    ResponderEliminar