Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [html] Problem mit autosizing und divs (https://www.delphipraxis.net/153981-%5Bhtml%5D-problem-mit-autosizing-und-divs.html)

Teekeks 23. Aug 2010 20:55

[html] Problem mit autosizing und divs
 
Hallo,
ich versuche jetzt schon seit einer Ewigkeit, folgendes hin zu bekommen:
Ich würde gerne ein Bild als Hintergrund (absolut gesehen Zentriert), welches sich immer wieder solange wiederholt, bis der Text zu ende ist (den lade ich per php rein, ist also nicht Statisch).

Eigendlich sollte man ja annehmen das ein div immer mindestens so lang ist, dass auch der längste Inhalt noch komplett reinpasst.
(darin ist noch ein div).

Ich habe folgendes Konstrukt:
Code:
<div id="imBody">
<div id="imContent">
<div id="imPage">
<div id="imCell">
  <div id="imCell_Cont">
    <div id="imTxt">
<!--textextextextextext-->
</div>
</div>
</div>
</div>
</div>
</div>
Die einzelnen Divs sehen so aus:
Code:
#imBody {background-image: url('content.png'); background-repeat: repeat-y; margin: 5px auto; margin-top:0px; margin-bottom:0px; width: 984px; background-position: left top;}
#imCell {position: absolute; top: 0px; left: 30px;width: 804px; overflow: hidden; }
#imPage {position: relative; min-height: 500px; }
#imTxt {padding: 0px; }
#imContent {width: 815px; float: left; margin-top: 8px;}
#imCell_Cont {overflow: hidden; }
Nur wird so, obwohl der Text länger ist, der Hintergrund (#imBody) nicht länger, nichtmal so wie es bei #imPage als min-Wert steht...

Nun stellt sich mir die Frage: Was mache ich Falsch?

Gruß Teekeks

Edit: siehe 3 Zeilen weiter oben...

I love Delphi 23. Aug 2010 21:08

AW: [html] Problem mit autosizing und divs
 
Hey,
wenn ich Dich richtig verstanden habe, hast du einen DIV-Tag, welcher als Hintergrund ein Bild haben soll. Das wiederum soll der Länge (also Y-Achse) entlang wiederholt werden. Wenn dem so ist hilft Dir vielleicht folgendes weiter: http://de.selfhtml.org/css/eigenscha...kground_repeat

Mit Deiner Schilderung, dass das DIV-Tag sich der Höhe des Inhalts anpasst hast Du recht; darüber hinausragen kann der Inhalt schließlich nicht :D

Mein Tipp wäre außerdem, falls möglich, die Seite mal im Firefox mit dem Add-On "FireBug" zu untersuchen, da bekommst Du den Tag schön visualisiert. Du könntest natürlich auch ein boder-width setzen...

Ich hoffe, dass ich Dich richtig verstanden habe und Dir helfen konnte!

Viele Grüße,
I love Delphi!

Matze 23. Aug 2010 21:11

AW: [html] Problem mit autosizing und divs
 
Hallo,

das liegt an der absoluten Position. Die hebelt im Endeffekt eine saubere Verschachtelung aus.
Setze das oberste Element als absolutes und beziehe alle anderen relativ auf dieses. Am besten wäre es, auf das absolute komplett zu verzichten.

Lasse dir einfach mal die Rahmen der <div>-Elemente anzeigen:
Code:
border: 1px solid #FF0000;
Dann siehst du, was wo liegt und was passiert.

Zitat:

Zitat von I love Delphi (Beitrag 1044454)
Mit Deiner Schilderung, dass das DIV-Tag sich der Höhe des Inhalts anpasst hast Du recht; darüber hinausragen kann der Inhalt schließlich nicht :D

Das stimmt so nicht. Wenn absolute <div>-Elemente verwendet werden, passt sich die Größe nicht unbedingt dem Inhalt an.

Als simples Beispiel ohne unnötige Verschachtelung:
Code:
#imBody {
   background-image: url('content.png');
   background-repeat: repeat-y;
   margin: 0px auto;
   width: 984px;
}
HTML-Code:
<html>
   <head>
      <link rel="stylesheet" type="text/css" href="_test1.css" />
   </head>
<body>
   <div id="imBody">
      Text
   </div>
</body>

I love Delphi 23. Aug 2010 21:15

AW: [html] Problem mit autosizing und divs
 
Zitat:

Zitat von Matze (Beitrag 1044455)
Zitat:

Zitat von I love Delphi (Beitrag 1044454)
Mit Deiner Schilderung, dass das DIV-Tag sich der Höhe des Inhalts anpasst hast Du recht; darüber hinausragen kann der Inhalt schließlich nicht :D

Das stimmt so nicht. Wenn absolute <div>-Elemente verwendet werden, passt sich die Größe nicht unbedingt dem Inhalt an.

Stimmt, da hast Du recht. Mein Fehler. Allerdings sollte man der Flexibilität und Kompatibilität zu liebe von absoluten Positionierungen abraten, sofern es anders möglich ist.

Viele Grüße,
I love Delphi!

Matze 23. Aug 2010 21:18

AW: [html] Problem mit autosizing und divs
 
Zitat:

Zitat von I love Delphi (Beitrag 1044456)
Allerdings sollte man der Flexibilität und Kompatibilität zu liebe von absoluten Positionierungen abraten, sofern es anders möglich ist.

Bisher habe ich die immer kompatibel hinbekommen und sehr flexibel bin ich teilweise auch damit.
Allerdings kann die Wartung erschwert werden, wenn man die absoluten Positionierungen übersieht oder nicht daran denkt.

Aber wenn es geht, würde ich diese ebenfalls vermeiden, wie oben erwähnt.

Teekeks 23. Aug 2010 21:21

AW: [html] Problem mit autosizing und divs
 
Danke für eure Antworten,
das Absolute war der Fehler :)
DANKE!


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:00 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz