Höhe eines Div-Containers

Hallo zusammen!

Mich beschäftigt folgendes Problem:

mit Hilfe von TinyMCE (Editor) speichert der Benutzer Bild & Text.

Jetzt hat er aber die Möglichkeit, die Bilder absolut in diesem Editor zu platzieren - ist auch gewollt, klappt auch.

Aber der Editor ist NICHT das Problem, es geht tatsächlich ‚nur‘ um html ,-)

Schauen wir uns mal den Quellcode an:

(…)

 

(…)

Der div-Container ist von mir, das, was im steht von TinyMCE.

FRAGE:

Wie bekomme ich die Höhe von divlm0 raus??
Wenn das Bild relativ, static usw positioniert wäre - alles kein Thema! Absolut positioniert: Keine Höhenangabe… - zumindes wird der COntainer (Hintergrundfarbe) einfach zu klein/falsch dargestellt.

Gibts hier einen Weg, den Container mit-„wachsen“ zu lassen?

Viele Grüße

Midir

Hallo

(…)

 

(…)

Erst einmal eine Idee: Brauchst du das div? Könnte man das Positionieren nicht direkt mit den von TinyMCE erstellten Objekten durchführen?

Der div-Container ist von mir, das, was im steht von
TinyMCE.

FRAGE:

Wie bekomme ich die Höhe von divlm0 raus??

Was meinst du damit?
Willst du die Höhe weg bekommen? Oder willst du herausfinden, wie hoch dein Div wird? Oder die Höhe deines Divs festlegen?

Gibts hier einen Weg, den Container mit-„wachsen“ zu lassen?

Mein Vorschlag: Eventuell darüber nachgrübeln, ob man den „Container“ überhaupt braucht. Ansonsten aber: Vielleicht hilft dir diese Seite weiter:
http://de.selfhtml.org/css/eigenschaften/positionier…

Eigentlich werden Div’s mit vergrößert, wenn ihr Inhalt nicht mit „Position“ aus dem Anzeigekontext herausgelöst wird.

LG
A

Re-Hallo :wink:

Erst einmal eine Idee: Brauchst du das div? Könnte man das
Positionieren nicht direkt mit den von TinyMCE erstellten
Objekten durchführen?

Zweifelsfrei ein guter Ansatz, in diesem fall jedoch leider nicht. Es handelt sich um diverse DB-Einträge und ich bin darauf angewiesen, hier ein unique-div aus dem .NET zu bekommen…

Eigentlich werden Div’s mit vergrößert, wenn ihr Inhalt nicht
mit „Position“ aus dem Anzeigekontext herausgelöst wird.

Und genau das ist mein Problem… es wäre wünschenswert, hier eine „GEsamt“-Höhe des umschließenden div’s zu bekommen…

Grüße

Midir

Moin!

Aber der Editor ist NICHT das Problem, es geht tatsächlich
‚nur‘ um html ,-)

Nicht wirklich. Die Frage hat mit HTML nichts zu tun. HTML kennt keine Größen von Elementen. Wozu auch? Es definiert ja nur die logische Bedeutung der Inhalte.

 

Das ist hier nicht erlaubt. Ein Block-Element darf nicht innerhalb eines Inline-Elements stehen.

Wie bekomme ich die Höhe von divlm0 raus??

Vermutlich nur mit JavaScript.

Gibts hier einen Weg, den Container mit-„wachsen“ zu lassen?

Das Image wird aus dem Textfluss genommen, steht also optisch quasi nicht mehr im Gruppenelement.

Warum, sagtest Du, ist die absolute Positionierung notwendig?

Grüße,
-Efchen

Mahlzeit auch :wink:

 

Das ist hier nicht erlaubt. Ein Block-Element darf nicht
innerhalb eines Inline-Elements stehen.

war mir auch so weit klar, nur ist das der von TinyMCE generierte COde - der auch funktioniert… Oder welche Probleme könnten auftauchen, von denen ich noch keine Ahnung habe??

Wie bekomme ich die Höhe von divlm0 raus??

Vermutlich nur mit JavaScript.

wär ja schon mal was - aber da bin ich nun im falschen Brett…

Das Image wird aus dem Textfluss genommen, steht also optisch
quasi nicht mehr im Gruppenelement.

Leider leider - aber wär halt toll wenn ich die Höhe vom Gruppenelement hätte…

Warum, sagtest Du, ist die absolute Positionierung notwendig?

Notwendig ist die absolute Positionierung nicht - der Benutzer KANN sie einfügen bei Bildern. - rausnehmen dieser Positionierungs-Möglichkeit ginge zwar, aber nur, wenns unbedingt sein muss… würde den Benuzer mmn zu sehr in der GEstaltung einschränken… daher würde ich wohl den JS-Weg einschlagen…

Danke für die Anmerkungen

Grüße

Midir

Ein Block-Element darf nicht
innerhalb eines Inline-Elements stehen.

war mir auch so weit klar, nur ist das der von TinyMCE
generierte COde - der auch funktioniert.

Browser haben es an sich, dass sie Fehler versuchen, selbständig zu korrigieren. In vielen Fällen geht das gut, aber eben nicht in allen.

Oder welche
Probleme könnten auftauchen, von denen ich noch keine Ahnung
habe??

Es kann quasi alles passieren. Wenn man etwas macht, was so in der Syntax nicht erlaubt ist, dann gibt es keinen Grund für einen Client (Browser), den Code in irgendeiner Weise auszuführen.
Meistens tun die Browser das aber doch, aber da es für eine Sprache wie HTML natürlich nur Regeln gibt, wie sie richtig funktioniert und wie sie im Browser bei richtigem Code dargestellt werden soll, gibt es keine Regeln, wie der Browser im Fehlerfall damit umgehen soll. Daher kann prinzipiell alles passieren und die Wahrscheinlichkeit ist hoch, dass jeder Browser den Fehler anders korrigiert.

Wie bekomme ich die Höhe von divlm0 raus??

Vermutlich nur mit JavaScript.

wär ja schon mal was - aber da bin ich nun im falschen
Brett…

Genau :wink: Kannst aber auch bei SelfHTML nachsehen und erstmal damit rumprobieren. Aber was machst Du,l wenn JavaScript im Browser deaktiviert ist?

Leider leider - aber wär halt toll wenn ich die Höhe vom
Gruppenelement hätte…

Ja, aber die ist ja zu klein, sagtest Du.

Warum, sagtest Du, ist die absolute Positionierung notwendig?

Notwendig ist die absolute Positionierung nicht - der Benutzer
KANN sie einfügen bei Bildern. - rausnehmen dieser
Positionierungs-Möglichkeit ginge zwar, aber nur, wenns
unbedingt sein muss.

Naja, im Moment stellt sich mir das so dar, als wäre es tatsächlich unbedingt nötig :smile:

würde den Benuzer mmn zu sehr in der
GEstaltung einschränken.

Kann ich gearde nicht nachvollziehen.

daher würde ich wohl den JS-Weg
einschlagen…

Womit wieder dem Entwickler der Seite mehr Rechte eingeräumt werden als dem Endbenutzer. Derjenige, der seine optischen Wünsche umsetzen will, soll sie durchsetzen können, auch wenn das zu Lasten des Nutzers geht (deaktiviertes JS).

Bei float kann man clear sagen, aber im Moment fällt mir nichts ein, was das selbe bei absoluter Positionierung erreicht. Allerdings habe ich bisher auch kaum eine Anwendung für absolute Positionierung gehabt. Meinem Gefühl nach missverstehen viele die absolute Positionierung, sie sollte nicht dazu verwendet werden, Elemente absolut zu positionieren, das kann bei so vielen unterschiedlich großen Viewports viel zu oft in die Hose gehen.
Absolute Positionierung wird dann interessant, wenn sie im Zusammenhang mit einem z-index kommt.

Liebe Grüße und noch viel Erfolg weiterhin,
-Efchen

Kannst du php benutzen?

Da gäbe es die Möglichkeit mit getimagesize() die Höhe des Bildes auszulesen. Damit könntest du dann dem DIV eine min-height geben. Da eventueller Text ja nicht absolut positioniert ist, würde es dann bei mehr Text auch höher als das Bild werden. (Padding-bottom gleicht die top:9px aus)

Der Pfad zum Bild ist eine Variable (Datenbankabfrage?)

Beispiel:

$bildpfad = 'SELECT bla bla oder sowas';
$size = getimagesize($bildpfad);
?\>

Es funktioniert so, ich habe es ausprobiert.