Jump to content


Photo

Layout Cross Browser E Ajustável


  • Faça o login para participar
8 replies to this topic

#1 Ain Dee

Ain Dee

    Turista

  • Usuários
  • 53 posts
  • Sexo:Feminino

Posted 30/05/2009, 13:23

Olá! Estou tentando fazer uma diagramação específica usando divs, porém, enfrento uma tremenda dificuldade nisto e estou quase convencida de que é praticamente impossível exceto se usando uma quantidade exagerada de divs inúteis. E aparemente deveria ser algum bem estúpido de ser feito...
Mas isto é o que uma recém-chegada em tableless diz. Com certeza deve haver uma maneira inteligente de fazer isto a qual não consigo enxergar, então por isso peço ajuda.

Minha intenção: Fazer um cross-browser (no mínimo deve ser visualizado corretamente no Opera 9.64, Firefox 2+ e ie 6+)... Ele deverá ser auto-ajustável à janela, sem nunca mostrar a barra de rolagem exceto em um iframe inserido em uma das divs, e quase todo em % para que se ajuste às mais diversas resoluções.

Esta é a diagramação:
Posted Image

Não vou postar todos os códigos que já escrevi para ele pois eu simplesmente já escrevi 3 versões diferentes aproximadamente... e todas ficaram bugadas em algum navegador... Sinal de que estou escrevendo um código que não é bom o suficiente.
O problema mais comum é o iframe não ocupar o espaço à ele destinado (usei um javascript para forçar isso, mas em alguns layouts não funcionou), ou ainda as divs da coluna 3 (onde está o conteúdo) ficarem posicionadas incorretamente, sobrepondo-se à segunda coluna. Já experimentei layouts de 4 colunas, de duas centralizado, usar container para a coluna 3, não usar, usar float... Mas alguma coisa sempre acaba se perdendo no meio do caminho.

Atualmente estou usando um layout de 4 colunas, e ele apresenta problemas no Ie, não importa a versão, mas só nele. No 6 o iframe estoura a página e segue reto até o final e o footer flutua sobre a coluna 2, no 7 iframe estoura tanto height quanto width e o footer e o bg do conteúdo sumiram.


Tentei realmente escrever o código sozinha mas não consigo superar os problemas. Preciso de ajuda, meus cabelos estão ficando brancos já, hah! Procuro sugestões de como alinhar as divs corretamente sem apresentar erros em algum browser e sem prejudicar o iframe.
Caso eu tenha dado um nome errado à algo, perdão, hahaha!

Atual página de testes: http://a-tumba.arte-virtual.org/test/
Esta abre no Opera e Firefox direito, já no ie....

Obrigada desde já,

Edição feita por: Ain Dee, 01/06/2009, 14:54.


#2 Édipo Costa Rebouças

Édipo Costa Rebouças

    Veterano

  • Ex-Admins
  • 1079 posts
  • Sexo:Masculino
  • Localidade:Brasil - São Paulo

Posted 02/06/2009, 13:19

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <meta name="generator" content="PSPad editor, www.pspad.com">
  <title></title>
	<style type="text/css">
		body, html{  margin: 0; padding: 0; height: 100%; }
		body{ text-align: center; }
		#geral{
			height: 100%; width: 998px; overflow: auto;
			margin: 0 auto;
			background-color: gray;
		}
		#colA{
			float: left;
			width: 300px; height: 100%;
			background-color: blue;
		}
		#colB{
			position: relative;
			float: left;
			width: 698px; height: 100%;
			background-color: #999;
		}
		
		#cabecalho{ position: relative; z-index: 1; width: 100%; height: 200px; background-color: red; }
		#conteudo{ 
			width: 100%; height: 100%;
			margin: -200px 0 -200px 0;
			background-color: yellow;
		}
		#rodape{ width: 100%; height: 200px; background-color: red; }
	</style>
  </head>
  <body>
	<div id="geral">
		<div id="colA">
			<!-- sideBar -->
		</div>
		<div id="colB">
			<div id="cabecalho"></div>
			<div id="menu"></div>
			<div id="conteudo">
			</div>
			<div id="rodape"></div>
		</div>
	</div>
 </body>
</html>

coloque um iframe na div conteudo, de margin de 200px para cima nele e use o seu script para pegar o tamanho da div #conteudo tirar 400px e atribuir ao iframe.

#3 Ain Dee

Ain Dee

    Turista

  • Usuários
  • 53 posts
  • Sexo:Feminino

Posted 02/06/2009, 14:41

Obrigada pela ajuda... ^^'
Só que já tentei código semelhante, o que houve é que o script não funciona, o iframe ocupa 100% da altura e no caso fica oculto atrás do header e footer. Colocando margin na parte superior, ok, o iframe sai do header. Só que mantêm a altura em 100% da janela e afunda além dos limites do site, não importa que margem eu insira no script, o máximo que consigo fazer é empurrar o rodapé com ela. Se eu remover da tag a altura ou colocar em auto então ele vira uma tirinha ali em cima. Remover o rodapé também não muda nada. E eu não posso colocar uma altura em % diferente de 100, e muito menos tentar uma com px já que a intenção é que o iframe ocupe o espaço vago. Tentar uma destas duas alternativas faria com que qualquer resize ou alteração de resolução bagunçasse tudo.

Sem falar que se não me engano quando comecei a adaptar para % algumas larguras acho que alguma coisa se comportou de forma bem estranha também nessa diagramação, mais tarde confirmo se foi com este tipo de layout.

Estou pesquisando para ver se encontro um outro script, e tentando descobrir o que há de errado. Mal sei sobre javascript, então... Rs. Este é o que eu estava usando.
function resizeIframe() {
	var height = document.documentElement.clientHeight;
	height -= document.getElementById('conteudo').offsetTop;
	
	// not sure how to get this dynamically
	height -= 70; /* whatever you set your body bottom margin/padding to be */
	
	document.getElementById('conteudo').style.height = height +"px";
	
};
document.getElementById('conteudo').onload = resizeIframe;
window.onresize = resizeIframe;


Obrigada de qualquer forma...!

Edição feita por: Ain Dee, 02/06/2009, 14:43.


#4 Édipo Costa Rebouças

Édipo Costa Rebouças

    Veterano

  • Ex-Admins
  • 1079 posts
  • Sexo:Masculino
  • Localidade:Brasil - São Paulo

Posted 02/06/2009, 16:30

faz um teste.
mudei uma coisinha no código e fiz um js nas coxa(rs)...
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <meta name="generator" content="PSPad editor, www.pspad.com">
  <title></title>
	<style type="text/css">
		body, html{  margin: 0; padding: 0; height: 100%; }
		body{ text-align: center; }
		#geral{
			height: 100%; width: 998px; overflow: auto;
			margin: 0 auto;
			background-color: gray;
		}
		#colA{
			float: left;
			width: 300px; height: 100%;
			background-color: blue;
		}
		#colB{
			position: relative;
			float: left;
			width: 698px; height: 100%;
			background-color: #999;
		}
		
		#cabecalho{ position: relative; z-index: 1; width: 100%; height: 200px; background-color: red; }
		#conteudo{ 
			width: 698px; height: 100%; overflow: hidden;
			margin: -200px 0 -200px 0;
			background-color: yellow;
		}
		#rodape{ width: 100%; height: 200px; background-color: red; }
	</style>
<script type="text/javascript"> 
window.onload = function(){
	var height = document.getElementById("conteudo").clientHeight- 400;
	var myIframe = document.getElementById("resizeBox");
	myIframe.height = height;
}

window.onresize = function(){
	var height = document.getElementById("conteudo").clientHeight- 400;
	var myIframe = document.getElementById("resizeBox");
	myIframe.height = height;
}
</script>   
  </head>
  <body>
	<div id="geral">
		<div id="colA">
			<!-- sideBar -->
		</div>
		<div id="colB">
			<div id="cabecalho"></div>
			<div id="menu"></div>
			<div id="conteudo">
					<iframe  id="resizeBox"  style="margin-top: 200px;" src="http://www.uol.com.br" width="100%" height="100%" marginheight="0" marginwidth="0" frameborder="0"></iframe>
			</div>
			<div id="rodape"></div>
		</div>
	</div>
 </body>
</html>


#5 Ain Dee

Ain Dee

    Turista

  • Usuários
  • 53 posts
  • Sexo:Feminino

Posted 02/06/2009, 18:33

Parece perfeito... Estou modificando algumas coisas ainda (tive que colocar o footer com position:relative para aparecer no ff, por exemplo), e vendo se consigo botar o lytebox para funcionar direito - é um lightbox específico para iframe, mas está um pouco estranho agora, abrindo dentro dele só. - Etc etc, mas à princípio creio que esses detalhes serão todos consertados, então problema resolvido.


Obrigada mesmo! Adoro usar essa diagramação meio doida e variantes dela, e não conseguia sair das terríveis tabelas pois sempre alguma coisa ficava errada, estranha ou com um código sujo demais ao tentar usar divs!

#6 RonsisM

RonsisM

    Super Veterano

  • Usuários
  • 15724 posts
  • Sexo:Masculino
  • Localidade:Plovdiv

Posted 22/09/2017, 21:10

Effexor Buy Online cheap cialis Priligy Cream Dapoxetina Menarini Prezzo Amoxicillin Clav Drug cheap cialis Buy Phenergan Overnight Deliery
Cialis Se Puede Tomar Todos Los Dias online pharmacy Cialis Aspirina Cephalexin Dental Infection Propecia Rogaine Female Hair Loss Overnight Shipping On Cialis cialis buy online Ovral No Prescription
Buy Clomid And Nolvadex Online cialis buy online Cialis Modo D Uso
Propecia Cheapest Secure Levitra Comprare
Cialis O Levitra Mejor <a href=http://cialtobuy.com>online pharmacy</a> Proscar No Script

#7 RonsisM

RonsisM

    Super Veterano

  • Usuários
  • 15724 posts
  • Sexo:Masculino
  • Localidade:Plovdiv

Posted 07/10/2017, 12:31

Levitra Seguridad Social Side Effects Expired Cephalexin online pharmacy Buy Zithromax 1g
Comprar Cialis Legal Cheap Ciprofloxacin online pharmacy Where To Buy Diflucan Prix Boite Cialis 5mg Buy Albendazole Tablets
Pilule De Cialis Pas Cher viagra Viagra Orders Online

#8 RonsisM

RonsisM

    Super Veterano

  • Usuários
  • 15724 posts
  • Sexo:Masculino
  • Localidade:Plovdiv

Posted 03/11/2017, 04:16

Cialis Vendita Acquistare Cialis Buy Xenical Online Levitra Espagne viagra Achat Cytotec Sur Internet Canadian Medicine Shop Direct Generic Progesterone For Sale Tablet No Doctors Consult
Real Shipped Ups Amoxicilina Free Shipping Discount Shop Tamsulosin No Prescription viagra online Venta Cialis Generico Por Internet Alli At Australian Pharmacies

#9 RonsisM

RonsisM

    Super Veterano

  • Usuários
  • 15724 posts
  • Sexo:Masculino
  • Localidade:Plovdiv

Posted 24/11/2017, 10:08

Keflex And Strep Throat Commander Viagra Cialis cialis Cialis Grande Pharmacie Lyonnaise Viagra Brand Without Prescription.
Amoxicillin Outdated Thyroxine Online No Prescription cheapest price for vardenafil 10mg Propecia Tienda order generic worldwide isotretinoin 10mg tablet usa
Ciprofloxacin Pricing Amoxicillin And Clavulanate Oral Suspension viagra online pharmacy Propecia Eficacia Efectos Secundarios Ponstel




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq