Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, tudo bem?
Estou querendo me aprofundar em XHTML e CSS, então gostaria de ter uma dúvida esclarecida.
Sou designer gráfico, mas sempre trabalhei na area de ilustração, identidade visual, essas coisas. Nunca cheguei a desenvolver para a web profissionalmente, apesar de ter algum conhecimento na área. Mas como que fica parado é pedra, resolví partir pra web também, profissionalmente falando.
Estou criando um site que deve passar pelo mesmo problema de todo iniciante que pegou o bonde já na era do XHTML, que é como carregar conteúdo em uma página através de um menu estático.
Quando eu primeiro me interessei por desenvolvimento web, ainda estava no HTML 4.0, CSS era um monstro de sete cabeças e eu tinha que escolher entre o Netscape Navigator ou o Internet Explorer logo na primeira página de qualquer coisa que eu quisesse visualizar na internet. Depois eu fui fazer outras coisas e deixei de lado a construção de sites. Mas, nessa época, a solução era usar frames. Não vou dizer que era uma maravilha o resultado, mas eles faziam o que se propunham: carregar conteúdo em uma porção do browser, enquanto outra porção permanecia estática.
Quando resolví voltar ao desenvolvimento web, descobrí que as frames já estavam totalmente descartadas, aprendí a trabalhar com divs, spans e outras tags que eu não usava (apesar de já estarem lá no html 4.0). Fui atrás da alternativa para frames, descobrí um troço chamado iframes, apenas para descobrir que também já é deprecated. Qual é a solução então? Eu preciso mesmo criar scripts em js ou ajax para conseguir o mesmo resultado que eu conseguia com frames a mais de 10 anos atrás? Em uma semana de pesquisa em foruns e perguntando pra conhecidos que tem mais prática do que eu, as únicas soluções que encontrei foram essas: iframes, js e ajax. E o engraçado é que pra todo mundo que eu perguntava, ou todo mundo que responde para outra pessoa com a mesma dúvida que eu em foruns, a resposta é "faça isso com iframes! só que não é legal usar iframes pq já é deprecated!" Me parece meio paradoxal isso :)
Eu sei que os iframes ainda são aceitos, no XHTML 1.0 Transitional, pois a minha página foi validada sem problemas. Mas o fato é que, apesar de o resultado visual ser satisfatório, estou usando uma técnica que já está declaradamente obsoleta. Como eu não gosto de ficar para trás, ou fazer trabalho nas coxas, que é o que mais atrapalha a vida de quem desenvolve profissionalmente (ou vocês nunca tiveram que explicar pra um cliente porque aquele moleque cobra 200 contos pra fazer um site? - ou uma identidade visual, no meu caso), e como eu peguei bem de relance no site da W3C que já estão trabalhando no HTML 5.0, seja lá o que isso signifique (pq eu achei que o lance agora era pular para XHTML, em vez de voltar pro HTML), eu queria ter certeza se as opções são realmente essas.
Continuar usando iframes vai garantir o funcionamento das páginas por um futuro próximo? Quando eu tentei validar a mesma página que eu mencionei antes como XHTML Strict ao invés de Transitional, o validator me retornou 8 erros (e 1 warning!), e todos os erros estavam justamente nas tags da iframe ou no traget do href que apontava para ela! Eu não cheguei a usar chamadas de js ou ajax para carregar o conteúdo, então não faço idéia se a página seria validada usando esses scripts. Eu não quero acreditar que a única forma de desenvolver para a web nos padrões do XHTML Strict seja sem usar conteúdo dinamico e sim carregando página atrás de página cada vez que eu clicar em um menu!
Alguém pode me dar uma luz nessa questão? Me desculpem pelo email longo, e se por acaso pareceu um pouco revoltado, não foi de propósito, mas sim pela frustração de não conseguir encontrar a resposta certa!
Abraços, e valeu a atenção!
Daniel Sousa
se não me engano, você pode usar a tag object no lugar do iframe, tendo que fazer um comentário condicional para ie colocando o iframe, ou substituindo direto via js, só acho que você no caso, o problema seria o esquema do target, você teria que fazer algo em js para abrir os links na tag object, e no iframe para ie.
Bom Daniel, realmente deixar um menu estático, e carregar somente uma parte do site, para troca de conteudo, teria que fazer com AJAX, sim seria válido o teu documento, mas o inconveniente disso, é o mesmo dos frames.. você não teria links internos para o teu site..
Mas, você pode usar includes server-side(php, asp..), assim você terá apenas um arquivo para o layout, e os de conteudo, serão apenas conteudo... sem tags <html>, <head>...