FRAMES

Frames (quadros) são relativamente usadas na Web. Há os que adoram o uso de frames e não admitem que suas home-pages fiquem sem elas, por outro lado há os que abominam o uso de frames, porque julgam que eles "estragam" o layout da home-page.

Fazer frames tem o mesmo procedimento que confecção de home-pages simples, a diferença é que se deve trocar a tag <BODY> pela tag <FRAMSET>

Para termos uma home-page com frames devemos ter três páginas, uma com o código que contém a tag <FRAMESET> e duas outras com os códigos onde serão inseridas as páginas de cada frame. Vamos procurar entender melhor.

Uma documento HTML simples seria assim :

<HTML>

<HEAD>

<TITLE>Página simples </TITLE>

</HEAD>

<BODY>

Neste campo entram os comandos em geral

</BODY>

</HTML>

 

Já um documento HTML que teria frames ficaria assim:

<HTML>

<HEAD>

<TITLE>Página com Frame </TITLE>

</HEAD>

<FRAMESET>

NESTE CAMPO ENTRAM AS CHAMADAS PARA OS DOCUMENTOS DOS FRAMES

</FRAMESET>

</HTML>

Então o que devemos fazer? Devemos criar um documento HTML normal e um documento HTML de frames. Vejamos um exemplo:

<HTML>

<HEAD>

<TITLE> Exemplo de frame</TITLE>

</HEAD>

<FRAMESET COLS=20% , 80%> <! Este comando inicia o frame e divide a tela do navegador em 2 partes, uma com 20% da tela e outra com 80%>

<FRAME SRC=FRAME1.HTM> <! Este comando chama as páginas HTML que devem ocupar as colunas divididas pelo frame>

<FRAME SRC=FRAME2.HTM>

</FRAMESET>

</HTML>

Este é o código para gerar os frames (veja a figura) .

Agora vamos crias os códigos para serem inseridos nas duas colunas que criamos.

<HTML>

<HEAD>

<TITLE>Página simples </TITLE>

</HEAD>

<BODY>

AQUI ENTRA A PRIMEIRA PÁGINA NORMAL

</BODY>

</HTML>

Salve este exemplo como FRAME1.HTM. Por que ? Porque no código que geramos no exemplo de frames chamamos a página com o comando <FRAME SRC=FRAME1.HTM>, se você salvar o nome do código de forma diferente deverá alterar também o código da página de frame.

<HTML>

<HEAD>

<TITLE>Página simples </TITLE>

</HEAD>

<BODY>

AQUI ENTRA A SEGUNDA PÁGINA NORMAL

</BODY>

</HTML>

Este código deve ser salvo como FRAME2.HTM, pelo mesmo motivo do código anterior. Sempre lembrando que estas páginas devem estar no mesmo DIRETÓRIO.

Pronto, você conseguiu fazer a sua primeira página com frame.

Alem de poder dividir o navegador em colunas com o parâmetro COLS dentro da tag <FRAMSET> , você também pode dividir em linhas usando o parâmetro ROWS, ou ainda dividindo em colunas e linhas ao mesmo tempo.

<HTML>

<HEAD>

<TITLE> Exemplo de frame</TITLE>

</HEAD>

<FRAMESET ROWS=50% , 50%> <! Este comando inicia o frame e divide a tela do navegador em 2 partes, uma com 50% da tela e outra com 50%>

<FRAME SRC=FRAME1.HTM> <! Este comando chama as páginas HTML que devem ocupar as colunas divididas pelo frame>

<FRAME SRC=FRAME2.HTM>

</FRAMESET></HTML>

Uma tag <FRAMESET> pode ser inserida dentro da outra gerando assim frames dentro de frames, como no código abaixo:

<HTML>

<HEAD>

<TITLE> Exemplo de frame</TITLE>

</HEAD>

<FRAMESET COLS=50%,50%>

<FRAMESET ROWS=50%,50%>

<FRAME SRC=FRAME1.HTM>

<FRAME SRC=FRAME1.HTM>

</FRAMESET>

<FRAMESET ROWS=50%,50%>

<FRAME SRC=FRAME1.HTM>

<FRAME SRC=FRAME1.HTM>

</FRAMESET>

</FRAMESET>

</HTML>

Este código gera a seguinte página :

Já deu para perceber que toda a estrutura de frames depende na verdade da tag <FRAME>. Vejamos alguns dos atributos que podem ser inseridos dentro desta tag.

Parâmetros de frames

Parâmetro SRC da tag <FRAME>

Este parâmetro é o responsável por chamar a página HTML que deve ser aberta (inserida) dentro de um frame. Em todos os exemplos até agora só usamos arquivos locais para abrir estas páginas em um frame, mas nada impede você de colocar no lugar uma URL completa. Por exemplo:

<FRAME SRC=http://www.yahoo.com>

Com este comando você será capaz, devidamente conectado, de chamar esta página para a seu frame, onde quer que ela esteja na Internet.

Parâmetro NAME

 Este é um dos principais parâmetros da tag <FRAME>. Ele serve, como era de se esperar, para definir o nome do frame. Ele deve ser usado em conjunto com outro parâmetro que é o TARGET.

Parâmetro MARGINWIDTH

Define a margem entre as laterais do frame e seu conteúdo. Exemplo:

<FRAME SRC=FRAME1.HTM MARGINWIDTH=100>

Este comando cria uma margem de 100 pixels de cada lado do frame.

 

Parâmetro MARGINHEIGHT

Da mesma forma que MARGINWIDTH, este parâmetro define uma distância de margem, que neste caso é a margem superior e inferior do frame. Exemplo:

<FRAME SRC=FRAME1.HTM MARGINHEIGHT=100>

Dá um espaço de 100 pixels entre as margens superior e inferior do frame.

Parâmetro SCROLLING

Define se o frame terá ou não barras de rolagem. Por default quando o conteúdo de uma página excede o tamanho do frame as barras de rolagem são acrescentadas automaticamente. Os valores válidos para SCROLLING são YES, NO e AUTO. Exemplo:

<FRAME SRC=FRAME1.HTM SCROLLING=YES>

 

Parâmetro TARGET 

Este é o mais importante de todos os parâmetros. Ele trabalha em conjunto com NAME e permite que coloquemos um link em um frame e o resultado, ou seja, a página linkada, aparece em outro frame.

Vejamos um exemplo de como podemos linkar um frame com outro. Vamos construir uma página que possua um menu de opções do lado direito, para isso podemos aproveitar os códigos de exemplo abordados anteriormente.  Os códigos são:

    FRAME.HTM

<HTML>

<HEAD>

<TITLE>FRAMES</TITLE>

</HEAD>

<FRAMESET COLS=25%,75%>

<FRAME SRC=FRAME1.HTM SCROLLING=NO>

<FRAME SRC=FRAME2.HTM NAME=TESTE>

</FRAMESET>

</HTML>

    FRAME1.HTM

<HTML>

<HEAD>

<TITLE>FRAMES</TITLE>

</HEAD>

<BODY BGCOLOR=YELLOW>

<CENTER><H2>Escolha um Link</H2></CENTER>

<BR>

<A HREF=http:\\www.amazon.com TARGET=TESTE>Livraria Amazon</A>

<BR>

< A HREF=http:\\www.yahoo.com TARGET=TESTE>Pesquisador YAHOO</A>

<BR>

<A HREF=FRAME2.HTM TARGET=TESTE>Volta para Frame2.htm</A>

</BODY>

</HTML>

 

      FRAME2.HTM

<HTML>

<HEAD>

<TITLE>FRAMES</TITLE>

</HEAD>

<BODY>

<CENTER><H2>Os links ao lado deverão aparecer neste lado do Navegador</H2></CENTER>

<BR>

<CENTER>

<FONT SIZE=4>Este frame é o que foi nomeado como TESTE com o parâmetro NAME em Frame.HTM</FONT>

</CENTER>

</BODY>

</HTML>

Se tudo funcionar convenientemente você deverá visualizar sua página como abaixo, mas é claro que os links que não são locais funcionarão somente se você estiver conectado.

Criando um frame Inline

Se você quiser misturar texto , figuras e um frame em uma mesma página você precisa criar um frame inline. Para isso , utilize a tag <IFRAME SRC=" nome do frame "> .

Você pode usar os complementos NAME – para especificar um nome que identifica qual frame está em uso ; WIDTH e HEIGTH para definir o espaço na página utilizado pelo Frame ; ALIGN ( LEFT ou RIGHT ) - para alinhar o frame na página. Lembre-se de fechar a tag </IFRAME>. Você também pode usar os atributos normais da tag frame , como o FRAMEBORDER , SCROLLING etc.

<html>

<body>

<center><h1>Exemplo do comando IFRAME </h1></center>

<hr>

<iframe width=90% height=70% src="pag2.htm">

</iframe>

</center>

Aqui continua a página normal !

</body>

</html>