Probleme mit divs
tomstig 12.08.2005 - 23:00 1232 15
tomstig
OC Addicted
|
![Prob prob.jpg](/attachment.php?attachmentid=83964) Bild verdeutlicht was ich will. Code schaut wie folgt aus: <?php
$start = microtime(true);
?>
<html>
<head>
<title>Bildergalerie</title>
<style type="text/css">
body{
background-color: #808080;
font-size: 10pt;
font-family: Arial;
}
</style>
</head>
<body>
<div style="width: 300px; margin-right: 2px; float: left; border: 1px solid #000; background-color: #bbb">
<?php
echo '<img src="logo' . rand(1,6) . '.jpg" alt="" style="border-bottom: 2px solid #000" /><br />';
?>
<div style="padding: 5px">
blablalbla
</div>
</div>
<div style="float: left;">
<?php
// code
?>
</div>
<?php
$end = microtime(true);
$gen_time = $end - $start;
?>
<div style="display: block"> // hier liegt der hund begraben
page generated in <?php echo substr($gen_time, 0, 5); ?>ms
</div>
</body>
</html>
Wie kann ich das lösen? tia
Bearbeitet von tomstig am 14.08.2005, 16:33
|
dio
Here to stay
|
Ich bin zwar selbst noch nicht so bewandert, was DIVs angeht, allerdings: http://www.w3.org/TR/CSS21/visuren.html#floatsBei Floats werden die Elemente aus dem Document Flow ausgehoben -> probiers mit einem <br style="clear: all;" />
hth
|
tomstig
OC Addicted
|
leider nein... macht einen ganz normalen zeilenumbruch neben dem mittleren div
|
DJ_Cyberdance
Here to stay
|
Öhm... is schon spät, vielleicht versteh ich das Problem nicht, aber ich würd in allen DIVs mit Positionsangaben arbeiten. Das hilft auch wenn unterschiedliche Browser Deine Seite anders interpretieren.
Das Problem liegt IMO im float:left im vorhergehenden DIV. Das heißt nämlich, daß das Element von nachfolgenden Elementen umflossen werden soll... Nimm das mal weg.
Sorry, falls ich wirres Zeug rede aber bin schon verdammt müde und geh jetzt heia *gähn*
|
tomstig
OC Addicted
|
ok, jetzt passts... hab vom mittleren div das "float: left" weggenommen...
|
tomstig
OC Addicted
|
Hab die Seite mal upgeloadet ( hier. Es gibt noch immer ein Problem, nämlich wenn die Bilderreihe länger als das Menü ist, dann springen die Bilder unter das Menü. Ich hätte das aber gerne so (grüner Border zeigt das mittlere Div, aber es soll so wie der rote Border sein): wie muss ichs machen?
Bearbeitet von tomstig am 13.08.2005, 02:51
|
Rektal
Here to stay
|
Wenn du das Nav-Div und das Galerie-Div left floatest, sollte es funktionieren. Braucht halt jeweils fixe breiten Angaben. Das <br> kommt weg, du laesst die Bilder Anhand der Breite des Galerie-Divs in die naechsten Zeilen brechen. Code fuer das Galerie-Div: <div style="float: left; width: 500px; border: 3px solid green">
Btw, display: block auf ein Div Element ist redundant. Divs sind per Definition block elemente, auser du sagst explizit sie sind keine.
Bearbeitet von Rektal am 13.08.2005, 09:02
|
tomstig
OC Addicted
|
Jetzt bin ich dort, wo ich schon vorher war ![;)](/images/smilies/wink.gif) (siehe 1. Post oder hier) Wie bekomm ich jetzt den dunkelgrauen Balken unter das Nav-Div und das Galerie-Div?
|
watchout
Legendundead
|
Jetzt bin ich dort, wo ich schon vorher war (siehe 1. Post oder hier)
Wie bekomm ich jetzt den dunkelgrauen Balken unter das Nav-Div und das Galerie-Div? margin-left: [navbreite+bordersusw]; im gallery-div
|
tomstig
OC Addicted
|
Damit wird nur der Abstand zwischen dem Nav-Div und dem Gallery-Div vergrößert...
|
gue
Addicted
|
Jetzt bin ich dort, wo ich schon vorher war (siehe 1. Post oder hier)
Wie bekomm ich jetzt den dunkelgrauen Balken unter das Nav-Div und das Galerie-Div? clear: left; im Footer-Div. Ich glaube watchout hat gemeint, dass du das Navigations-Div position:absolute; machst, dann würd ich aber eher left: <navigations-breite>; verwenden, statt margin-left. Übrigens wird deine Seite ja verdaaammt schnell generiert: 0.003ms - ich glaub so schnell könnte php das nicht mal outputten ![;)](/images/smilies/wink.gif) ahja und beim © im Footer fehlt der Strichpunkt
|
tomstig
OC Addicted
|
clear: left; im Footer-Div. Ich glaube watchout hat gemeint, dass du das Navigations-Div position:absolute; machst, dann würd ich aber eher left: <navigations-breite>; verwenden, statt margin-left.
Übrigens wird deine Seite ja verdaaammt schnell generiert: 0.003ms - ich glaub so schnell könnte php das nicht mal outputten ahja und beim © im Footer fehlt der Strichpunkt ![;)](/images/smilies/wink.gif) Ja, ich wollte, das absichtlich nicht mit position: absolute machen, wegen dem footer. und beim © fehlt kein Strichpunkt... bei mir wirds ganz normal angezeigt... however, jetzt funktionierts - vielen dank
|
Rektal
Here to stay
|
Doch der fehlt. Nur weils so angezeigt wird wie du es erwartest heisst es nicht dass es richtig umgesetzt ist. Entities fangen immer mit '&' an und enden immer mit ';'.
Bearbeitet von Rektal am 15.08.2005, 11:37
|
tomstig
OC Addicted
|
aja...
normal schreib ichs eh richtig...
|
watchout
Legendundead
|
Damit wird nur der Abstand zwischen dem Nav-Div und dem Gallery-Div vergrößert... <div style="float:left;border:1px solid red;width:100px;">
A<br/>
B<br/>
C<br/>
</div>
<div style="margin-left:102px;border: 1px solid red;">
A<br/>
B<br/>
C<br/>
D<br/>
E<br/>
</div>
|