← HTML + CSS

Div não assume altura das divs interiores

Lida 2785 vezes

Offline

Tjda 
Membro
Mensagens 690 Gostos 9
Troféus totais: 31
Trófeus: (Ver todos)
Mobile User Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

Ola, estou com um problema que não estou a conseguir resolver, eu tenho um código assim:

Código: [Seleccione]
<div id="Principal">
<div class="esquerda">...</div>
<div class="direita" >...</div>
</div>
<div class="footer">...</div>

Nenhum desses estilos tem altura definida, no entanto dentro da <div class="esquerda"> existe conteúdo dinâmico que define a altura, esse conteúdo aparece direito, e se não existisse a <div class="footer">...</div> por baixo não havia nenhum problema, só que como diz o titulo, a <div id="Principal"> não assume a altura do conteúdo dentro das suas divs interiores, o que faz com que a <div class="footer">...</div> apareça atravessada no conteúdo das <div class="esquerda">...</div> <div class="direita" >...</div>.

Alguém tem uma solução ?é impossível definir uma altura para os estilos das 3 primeiras divs, pois como disse é conteúdo dinâmico.
Offline

Pedro Lopes 
Beta tester
Mensagens 3568 Gostos 18
Feedback +6

Troféus totais: 32
Trófeus: (Ver todos)
Level 6 Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

mete depois da div principal e antes do footer:
<div style="clear:both;"> </div>
Offline

Tjda 
Membro
Mensagens 690 Gostos 9
Troféus totais: 31
Trófeus: (Ver todos)
Mobile User Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

é isso mesmo funcionou, obrigado, esse estilo faz o que ?
Offline

Pedro Lopes 
Beta tester
Mensagens 3568 Gostos 18
Feedback +6

Troféus totais: 32
Trófeus: (Ver todos)
Level 6 Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

Estavas a defenis um float left e outro right não é? Sempre que o fazes, no fim tens de adicionar isso.

Como o nome indica, tá a limpar/fazer um reset, senão tudo oque vinha a seguir e ficar ao lado da div anterior. Neste caso nao tinha espaço, ficou meio por cima.

(Peço desculpa pelos erros. Telemovel.)
Offline

rtbfreitas 
Equipa
Mensagens 1497 Gostos 9
Feedback +24

Troféus totais: 30
Trófeus: (Ver todos)
Windows User Apple User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4

É isso mesmo que o Pedro disse, o clear (left, right ou both) limpa os floats, mas não precisas criar uma div só para isso, na regra CSS da div footer coloca lá clear: both; funciona na mesma.
Offline

Pedro Lopes 
Beta tester
Mensagens 3568 Gostos 18
Feedback +6

Troféus totais: 32
Trófeus: (Ver todos)
Level 6 Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

O melhor é mesmo criar uma nova class no css com o clear, assim sempre que precisar usa a class e não inline style ou no style de cada div.