Hey,
Ich hab ein absolut positionierten <div> der eine gewisse größe hat.
In diesem möchte ich untereinander mehrere <div class="eintrag"> container anordnen
! welche eine variable größe nach ihrem Inhalt haben da man in diesem ein oder mehrere <div> container per java ein und ausklappen kann.ich nehme mal an, du meinst Javascript, nicht Java.
Leider fehlte diese Beschreibung des Problems (auch wenn sie noch sehr knapp ist) im Startposting völlig.
Ja natürlich Javascript, hab das bei der antwort auch noch korrigiert aber irgendwie wurde es doch nicht übernommen.
Problem ist jetzt das der nächste <div class="eintrag"> sich nicht automatisch nach unten verschiebt.
Du willst also, dass das Elternelement mit der Größe seiner Kindelemente mitwächst? Das ist eigentlich das normale Verhalten, und du setzt es mit absoluter Positionierung oder Floating außer Kraft. Warum?
Ja das dachte ich bisher auch aber aus irgendeinem unerfindlichen Grund tut es das grade nicht, und ich finde den Fehler nicht.
(Kurz nebenbei werden auch z.b. trennlinien <hr> nicht zwischen den <div class="eintrag"> angezeigt sondern hinter diesen in einer andern z ebene, was ich mir auch nicht erklären kann)
Das ist der Effekt von position:absolute oder float: Die Elemente werden aus dem regulären Fluss herausgenommen und beeinflussen Anordnung und Größe ihrer Geschwister- und Elternelemente nicht mehr. Übrigens sehe ich im HTML-Code, den du gezeigt hast, gar keine hr-Elemente.
1. Das war mir nur teilweise bewusst aber klingt im nachhinein auch völlig logisch.
2. Ja mit den <hr> hatte ich mal drin aber da das nicht funktionierte wie gedacht hab ich die wieder raus genommen.
Bis jetzt hab ich jegliche kombinationen von position: und float: ausprobiert die mir eingefallen ist aber nie mit dem gewünschtem Ergebnis.
Wie wär's mit Weglassen?
Dann ist die standart einstellung position:static;
also muss ich wenn ich Elemente in diesem statischen element anordnen möchte doch mit float:
arbeiten oder?
Abgesehen davon ist dein HTML in vielen Punkten fehlerhaft oder verbesserungswürdig.
<link rel="stylesheet" type="text/css" href="style.css"/>
Du verwendest laut DOCTYPE-Deklaration HTML 4.01, da ist das Schließen von leeren Elementen im XML-Stil falsch.
Also ich setze mich jez insgesamt etwa 2 wochen mit dem thema Html auseinander und versuche mir das alles Selbst beizubringen. Haupt anlaufpunkt war für mich stehts Selfhtml was mir auch viel geholfen hat.
Daher verzeih mir bitte wenn ich deine Antwort nicht ganz verstehe.
Warum ist das Element leer?
Und die DOCTYPE hab ich so aus Selfhtml übernommen ohne diese im Ganzen exakt zu verstehen.
<p class="h1">
Überschrift:
</p>Autsch. Was soll der Unfug mit <p class="h1">? Wenn das eine Überschrift sein soll, zeichne sie doch einfach als solche aus, also mit <h1> (oder <h2>, wenn das Dokument schon eine übergeordnete Gesamt-Überschrift hat).
Außerdem ist es weder notwendig, noch sinnvoll, Umlaute zu verstümmeln. Ich hoffe doch, dass du eine Zeichencodierung verwendest, die Umlaute direkt darstellen kann (z.B. UTF-8). Also schreib sie doch einfach im Klartext hin.
1. Du hast recht, dass ist unglücklich aber nur ein erster versuch wie ich alles definiere.
2. Das dokument hat eig garkeine richtige Überschrift und die <h1> überschrift ist mir einfach zu groß, wobei ich sagen muss ich deswegen auch noch nicht überlegt habe ob ich nicht einfach im CSS mit font-size:
um definiere.
3. Nein mit Zeichencodierung hab ich mich noch nicht beschäftigt da ich mittlerweile auch schon automatisch den "&_uml" schreibe, aber dann werde ich mich diesbezüglich auch nochmal mehr damit beschäftigen. Danke für den Hinweis.
<p><b>Beschreibung:</b>
Was soll das missbilligte b-Element? Für visuelle Effekte (Fett) ist CSS da.
Das ist wahrscheinlich ein Überbleibsel aus einem älteren code, wird entfernt^^.
<a href="javascript:/" onClick="div_change(5)"><img src="minus.jpg" ID="img5" border="0" style="vertical-align:middle"></a><br></p>
Die Anweisung im href-Attribut "/" ist kein gültiger Javascript-Code. Was soll das sein?
Außerdem heißt der Eventhandler eigentlich onclick, und dem img-Element fehlt das alt-Attribut.
Und auch hier: Verwende konsequent CSS für darstellerische Effekte (und bitte nicht als inline-Styles, sondern in einem zentralen Stylesheet).
1. Ok, dass weiß ich nicht, genauso weiß ich nicht was sich ändern könnte wenn man das "/" entfernt. Probiere ich nachher mal aus.
2. onclick und nicht onClick ?
3.alt-attribut ist anscheind irgendwann mal ausversehn entfernt worden und wurde übersehn.
4.Auch hier ein Überbleibsel von einem test steht normalerweise alles in der CSS.
<div id="5" class="beschreibung">
Fehler: In HTML 4.01 dürfen ID-Werte nicht mit einer Ziffer beginnen.
Das wär mir nie aufgefallen wenn du es nicht gesagt hättest. Aber was schreib ich da sonst hin? Denn das bezieht sich ja nur auf die js-funktion aus (strID) und hat keine bedeutung für layout oder sonstiges. Wie müsste man das ändern?
Vielen Dank für deine Anregungen
Gruß
Jo