1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

<frameset> / maneira diferente de o fazer

Discussão em 'Web Development' iniciada por Morphine0225, 3 de Outubro de 2008. (Respostas: 10; Visualizações: 1251)

  1. Morphine0225

    Morphine0225 Power Member

    Viva pessoal!

    Venho com uma enorme dúvida que me aflige a muito. Passo a explicar, nas poucas "tentativas" de sites que fiz, usei sempre como base no file "index" a tag <frameset> e depois as <frame>. Agora prende-se uma grande dúvida com tudo isto, os scrollings do site entre outros.

    Em baixo mostro um exemplo do que estou a falar para melhor se perceber, fiz agora este código para poder explicar:

    [​IMG][​IMG]

    O que tenho a vermelhodo lado esquerdo é o local onde tenho a barra, e o local a vermelho do lado direito é onde eu gostava de ter, para assim poder fazer scroll a pagina inteira e não ser obrigado a fazer apenas a "main".

    Código:
    <frameset border="0" cols="*, 800, *">
            <frame frameborder="no" name="left" src="left.htm" scrolling="no">
    
            <frameset border="0" rows="200, *, 30">
                <frame frameborder="no" name="header" src="header.htm" scrolling="no" noresize>
                <frame frameborder="no" name="main" src="main.htm">
                <frame frameborder="no" name="footer" src="footer.htm" scrolling="no" noresize>
            </frameset>    
    
            <frame frameborder="no" name="right" src="right.htm" scrolling="no">
        </frameset>
    Este é o código utilizado neste exemplo.

    Aceito todas ideias que possam dar, se me poderem dizer uma maneira de fazer isto sem utilizar <frameset> e que fique bom digam-me. Preciso mesmo de saber como o fazer.

    Desde já obrigado pela ajuda,
    cumprimentos,
    Morphine0225
     
  2. MrRCS

    MrRCS Power Member

  3. Morphine0225

    Morphine0225 Power Member

    Com o iframe vai-me criar o mesmo problema do scrolling. Com as divs já estive a experimentar qualquer coisa, mas tenho outro grande problema. Como fazer o target de um file.htm para uma div? :1361:

    EDIT: Com as Divs o código que já criei foi este:

    Código:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    
    <link rel="stylesheet" href="stylesheet.css" type="text/css">
    
    <title>Teste</title>
    
    </head>
    <body bgcolor="blue">
    
    <!--header-->
    <div id="pageHeader">
    header header header header 
    </div>
    
    <!--body-->
    <div id="pageBody">
    body body body body body 
    </div>
    
    
    <!--footer-->
    <div id="pageFooter">
    footer footer footer footer footer
    </div>
    
    </body>
    </html>
    Na stylesheet tenho este código:

    Código:
    #pageHeader {
    width: 800px;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    background: grey;
    }
    
    #pageBody {
    width: 800px;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    background: #383838;
    }
    
    #pageFooter {
    width: 800px;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    background: yellow;
    }
    Até gostei do resultado final deste código, ficou tudo automático, as medidas consoante a resolução do ecrã e assim. Mas o problema é mesmo o target. Já tive a pesquisar e já vi que com html não dá para fazer target de um ficheiro para dentro de uma div como se faz para as frames.

    Preciso mesmo da vossa ajuda.

    Cumps,
    Morphine0225
     
    Última edição: 6 de Outubro de 2008
  4. krunch

    krunch Power Member

    Por que precisas de frames?

    Com divs não precisas de fazer "target de um ficheiro para dentro de uma div". É uma mudança de paradigma. Tal como o MrRCS disse, podes usar PHP e nao repetir o conteudo.

    Situacao actual:
    1 ficheiro master com frames
    N ficheiros html que fazem target nas frames

    Situacao desejada:
    1 ficheiro com o layout (menus, etc)
    N ficheiros com o conteudo

    Os ficheiros PHP terão a estrutura - exemplo:
    A.php
    Código:
    <?php require menu.php ?>
    <body>
    <h1>Ola Mundo</h1>
    <p> ficheiro A </p>
    </body>
    </html>
     
    B.php
    Código:
    <?php require menu.php ?>
    <body>
    <h1>Ola Mundo</h1>
    <p> ficheiro B </p>
    </body>
    </html> 
    e o menu.php
    Código:
    <html>
    <head>....</head> 
    A vantagem é que encapsulas parte do codigo sem sacrificar o layout final.
    O menu pode até ser o unico sitio onde declaras a formatacao (link para o CSS ou o CSS listado) e podes alterar a formatacao sem ter de alterar o codigo principal.
    Julgo que esta era a razao pela qual usavas frames, mas com PHP, ASP ou outra server side scripting language, já nao se justifica. E deixas de ter o problema do URL unico para todas as partes do site (que é horrivel). Vale a pena alterares... Frames é das maiores aberracoes que existem, imho :P
     
    Última edição pelo moderador: 6 de Outubro de 2008
  5. MrRCS

    MrRCS Power Member

    Última edição: 6 de Outubro de 2008
  6. krunch

    krunch Power Member

  7. Morphine0225

    Morphine0225 Power Member

    Tens toda a razão. Por isso mesmo quero deixar as frames. Aquilo fica mesmo mau. Os scrollings e assim, uma desorganização do pior mesmo...

    Quanto ao php, posso dizer que nunca utilizei, não sei sequer o básico dos básicos. Gostava bastante de umas dicas (um desenho..lol :D).

    Não percebi bem. O menu replicado em vários ficheiros como assim?
    Gostei do resultado das divs. Gosto do pormenor delas se "ajustarem" automaticamente ao conteúdo do site.

    Aceito todas as sugestões que me queiram dar pessoal! Até agora tão a ajudar bastante! ;)

    Abraço!
     
  8. alfinete

    alfinete Power Member

    nese caso das divs ha uma hipotese, tdas as paginas que tenham necessidade de frames, tem essas divs, e na div do meio poes o conteudo que queres...
     
  9. MrRCS

    MrRCS Power Member

    sem php, (...) é a unica maneira
    da para automatizar com o dreamweaver

    tambem se podia usar javascript...

    seja como for, é preciso sempre replicar algo.
    todo o codigo "menu", ou o link .js, iframe etc

    edit: iframe
    http://tech987.no.sapo.pt/iframe/test1.html
    http://tech987.no.sapo.pt/iframe/test2.html
    http://tech987.no.sapo.pt/iframe/left.html
    http://tech987.no.sapo.pt/iframe/right.html

    edit: js
    http://tech987.no.sapo.pt/js.externo/test1.html
    http://tech987.no.sapo.pt/js.externo/test2.html
    http://tech987.no.sapo.pt/js.externo/left.js
    http://tech987.no.sapo.pt/js.externo/right.js

    sem php e usando so o notepad
    sao as unicas maneiras que conheço

    quando falo em php refiro-me a qualquer linguagem "server side"
     
    Última edição: 6 de Outubro de 2008
  10. krunch

    krunch Power Member

    Tens razao, MrRCS!

    Morphine0225, em que server estás a alojar esse site?
    Tens direito a PHP, ASP, etc?
     
  11. Morphine0225

    Morphine0225 Power Member

    Por enquanto ainda não está alojado em nenhum server. Tenho de o acabar primeiro para assim depois o colocar num server, e conforme as necessidades, assim irei fazer a escolha do mesmo. Devido a isto posso incluir o que for necessário no site.

    Estou a estudar as várias hipóteses que colocaram aqui! Obrigadão pessoal!:D:D
     

Partilhar esta Página