Etiqueta <FRAMESET>
Las etiquetas <FRAMESET>…</FRAMESET> son las que van a decirle al navegador dónde empiezan y dónde acaban los marcos, y el tipo y forma de estos. Entre una y otra irán las definiciones de los diferentes frames.
Estas etiquetas se deben situar entre <HTML> y </HTML>, pero podemos hacerlo también entre </HEAD> y <BODY>, en incluso podemos no utilizar <BODY>…</BODY>.
Sus principales atributos o parametros son:
* COLS= " x,y,z,…", para definir el nº de columnas o marcos verticales que va a tener la ventana, y donde las variables x,y,z… van a definir el tamaño de cada marco vertical, pudiendo definirse en píxeles o en porcentaje. También podemos fijar el tamaño de una columna o columnas como * , y en este caso el tamaño de esta sera todo aquel que quede después de definir mediante puntos o porcentajes las demas columnas.
Si definimos tamaños en píxeles, estos seran absolutos, En este caso si todas las frames se indican de este modo, los valores se ajustaran para que las frames ocupen la totalidad del espacio de la ventana del navegador, no guardando siempre la proporción con la que se definen las frames.
Por el contrario, si empleamos medidas en porcentaje, en este caso si los porcentajes suman un valor distinto del 100%, se ajustaran para que coincidan con el tamaño de la ventana. Se podra combinar con el apartado anterior de forma que algunas frames se definan en valor absoluto y otras en porcentaje.
Posibles combinaciones serían:
1) COLS="100,700"…que nos dividiría la ventana en dos columnas, una de 100 puntos y la otra de 700.
2) COLS="10%,*"…que nos daría una columna con el 10% de la ventana y otra con el resto.
3) COLS="20%,*,*"…obteniendo con ello una columna del 20% de la ventana y otras dos que se
repartirian por igual el tamaño restante.
4) COLS="*,2*"…que nos creara dos columnas, teniendo la segunda el doble de ancho que la primera,
es decir, la primera ocuparía el 33% de la ventana y la segunda el 66% restante.
* ROWS=" x,y,z,…", para definir el nº de filas o marcos horizontales que va a tener la ventana, y donde las variables x,y,z… van a definir el tamaño de cada marco horizontal, pudiendo definirse en píxeles o en porcentaje. También podemos fijar el tamaño de una fila o filas como * , y en este caso el tamaño de esta sera todo aquel que quede después de definir mediante píxeles o porcentajes las demas filas. Las combinaciones posibles son muchas, siendo su estructura analoga a las vistas para COLS.
Si definimos tamaños en píxeles, estos seran absolutos, En este caso si todas las frames se indican de este modo, los valores se ajustaran para que las frames ocupen la totalidad del espacio de la ventana del navegador, no guardando siempre la proporción con la que se definen las frames.
Por el contrario, si empleamos medidas en porcentaje, en este caso si los porcentajes suman un valor distinto del 100%, se ajustaran para que coincidan con el tamaño de la ventana. Se podra combinar con el apartado anterior de forma que algunas frames se definan en valor absoluto y otras en porcentaje.
* FRAMEBORDER= " 0 / 1 / no / yes ", que nos permite definir si los marcos creados van a tener borde o no. Los valores 0 y no son equivalentes, eliminando los bordes, así como 1 y yes, que los muestran. Su valor por defecto es yes / 1 , por lo que si no especificamos nada se veran los bordes de todos los marcos.
Si ademas queremos que no se vean los huecos que originan los bordes invisibles hay que añadir el atributo
FRAMESPACING=0 para Internet Explorer y BORDER=0 para Nestcape.
Ejemplo.-
<html>
<head>
<title>Mi pagina</title>
</head>
<frameset rows="20%,*" >
<frame name="" src="a.html" marginwidth="10" marginheight="10" scrolling="auto" >
<frame name="" src="b.html" marginwidth="10" marginheight="10" scrolling="auto" >
</frameset>
</html>
ver resultado.
O bien sin bordes:
<html>
<head>
<title>Mi pagina</title>
</head>
<frameset rows="20%,*" frameborder="0" framespacing="0" border="0">
<frame name="" src="a.html" marginwidth="10" marginheight="10" scrolling="auto" >
<frame name="" src="b.html" marginwidth="10" marginheight="10" scrolling="auto" >
</frameset>
</html>
ver resultado.
* BORDER= " n ", con n = nº entero = nº de píxeles. En el caso de que se haya establecido FRAMEBORDER=" 1 " o no se haya especificado, este atributo nos permite definir el grosor del borde. Sólo funciona con Nestcape.
* FRAMESPACING= " n ", con n = nº entero = nº de píxeles. Nos permite definir el espacio entre los marcos, y en el caso de que se haya establecido FRAMEBORDER=" 1 " o no se haya especificado, este atributo nos permite definir el grosor del borde. Sólo funciona con Explorer.
* BORDERCOLOR= " color ", donde color puede
venir especificado mediante su nombre web en inglés o mediante su código hexadecimal. Nos permite
establecer el color de los bordes de los marcos.
Ejemplo.-
<html>
<head>
<title>Mi pagina</title>
</head>
<frameset rows="20%,*" bordercolor="red">
<frame name="" src="a.html" marginwidth="10" marginheight="10" scrolling="auto" >
<frame name="" src="b.html" marginwidth="10" marginheight="10" scrolling="auto" >
</frameset>
</html>
ver resultado.