webForumDet fria alternativet

Ännu en float:right-tråd...

HTML & CSS

2 svar · 244 visningar · startad av nidron

Medlem sedan jan. 2005257 inlägg
Frågan#1

Har tre <div> på rad, vi kan kalla dem div1 div2 och div3.
div1 ligger längst till vänster och har fått en float:left. De två andra ska vara högerjusterade och bägge har fått float:right. Då händer ngt lustigt: div2 hamnar höger om div3, när div2 egentligen borde hamna mellan den första och den tredje. Antar att det beror på att när div2 har en float:right först så hamnar den därför allra längst till höger.

Finns det något smidigare sätt att lösa detta på än att helt enkelt byta plats på div2 och div3 i xhtml-koden?

Tacksam för tips.

Medlem sedan dec. 20042 245 inlägg
#2

Det är som du säger att div2 ligger före div3 och hamnar därför längst till höger. Det du kan göra är att lägga dit en fjärde div som omsluter div2 och div3, anger float:right på den och därefter float:left på div2.

<div class="div1">ett</div>
<div class="wrap">
 <div class="div2">två</div>
 <div class="div3">tre</div>
</div>
.div1 { float:left; }
.wrap { float:right; }
.wrap .div2 { float:left; }
Medlem sedan jan. 2005257 inlägg
#3

zcorpan skrev:

Det är som du säger att div2 ligger före div3 och hamnar därför längst till höger. Det du kan göra är att lägga dit en fjärde div som omsluter div2 och div3, anger float:right på den och därefter float:left på div2.

<div class="div1">ett</div>
<div class="wrap">
 <div class="div2">två</div>
 <div class="div3">tre</div>
</div>
.div1 { float:left; }
.wrap { float:right; }
.wrap .div2 { float:left; }

Tänkte också på det viset. Många divar blir det, men problemet blir iaf löst =o)

272 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
142 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)