Relative Höhe von (Formular-)Texttabellen
Verfasst: Mo, 11.06.2012 14:25
Einen schönen Tag alle Miteinander!
Dies ist eigentlich ein Thema für Writer bzw. HTML aber eben auch bei Formularen unter BASE von Interesse.
Formularsteuerelemente wie Eingabefelder, Schaltflächen usw. lassen sich entweder an der Seite, am Absatz oder als Zeichen verankern. Alle diese Methoden bewirken eine statische Positionierung auf dem Formular.
Möchte man aber eine dynamische Positionierung abhängig von der aktuell eingestellten Fenstergröße, kann man eine (unsichtbare) Texttabelle zu Hilfe nehmen. Dazu muss zunächst eine (unsichtbare) Texttabelle mit der Ausrichtung "automatisch" erstellt werden. Dann können die betreffenden Steuerelemente jeweils am Absatz der gewünschten Tabellenzelle verankert werden. Durch die Festlegung von festen Zeilenhöhen (linke Maustaste auf die Tabellenzelle klicken und Zeilenhöhe einstellen) kann zum Schluss noch die vertikale Ausrichtung realisiert werden.
Dieser Trick zur dynamischen Positionierung von Elementen auf dem Bildschirm wurde schon zu Zeiten von HTML 3.2 angewendet, als die Positionierung mit Stylesheets vielen Browsern noch Probleme bereitete. Weil BASE-Formulare immer in der HTML-Ansicht dargestellt werden, kann dieser Trick aber auch hier (fast) problemlos zum Einsatz kommen
Die Writer-Tabellenausrichtung "automatisch" bewirkt eine kontinuierliche Dehnung/Stauchung der Tabelle in horizontaler Richtung abhängig von der aktuellen Fensterbreite und entspricht damit der prozentualen Breitenangabe "100%" wie von HTML bekannt. Bei OO lassen sich dazu auch noch die Tabellenabstände zum Seitenrand "oben" bzw. "links" explizit einstellen. Aber auch dann kann mit dem Options-Häkchen "relativ" die Tabellenbreite prozentual eingestellt werden - genau so, wie man es von HTML kennt.
Das Problem:
Bisher habe ich nur von der horizontalen Ausrichtung gesprochen weil unter OO eine vertikal-relative Ausrichtung nicht möglich ist. Auch die Höhe der Tabellenzeilen läßt sich nur absolut in cm einstellen. Die Festlegung des Tabellenabstands zum unteren Rand mit "0 cm" hat überhaupt keine Wirkung! Damit ist eine dynamische Positionierung nach unten bzw. eine vertikale Dehnung/Stauchung der Tabelle leider nicht möglich und wir verlassen die schöne HTML-Konformität!
Gibt es hierzu vielleicht ein bekanntes "workarround"?
Sollte ich diesen Thread doch besser in die Rubrik HTML stellen?
Grüße aus dem fernen Dresden:
ejomi
Dies ist eigentlich ein Thema für Writer bzw. HTML aber eben auch bei Formularen unter BASE von Interesse.
Formularsteuerelemente wie Eingabefelder, Schaltflächen usw. lassen sich entweder an der Seite, am Absatz oder als Zeichen verankern. Alle diese Methoden bewirken eine statische Positionierung auf dem Formular.
Möchte man aber eine dynamische Positionierung abhängig von der aktuell eingestellten Fenstergröße, kann man eine (unsichtbare) Texttabelle zu Hilfe nehmen. Dazu muss zunächst eine (unsichtbare) Texttabelle mit der Ausrichtung "automatisch" erstellt werden. Dann können die betreffenden Steuerelemente jeweils am Absatz der gewünschten Tabellenzelle verankert werden. Durch die Festlegung von festen Zeilenhöhen (linke Maustaste auf die Tabellenzelle klicken und Zeilenhöhe einstellen) kann zum Schluss noch die vertikale Ausrichtung realisiert werden.
Dieser Trick zur dynamischen Positionierung von Elementen auf dem Bildschirm wurde schon zu Zeiten von HTML 3.2 angewendet, als die Positionierung mit Stylesheets vielen Browsern noch Probleme bereitete. Weil BASE-Formulare immer in der HTML-Ansicht dargestellt werden, kann dieser Trick aber auch hier (fast) problemlos zum Einsatz kommen
Die Writer-Tabellenausrichtung "automatisch" bewirkt eine kontinuierliche Dehnung/Stauchung der Tabelle in horizontaler Richtung abhängig von der aktuellen Fensterbreite und entspricht damit der prozentualen Breitenangabe "100%" wie von HTML bekannt. Bei OO lassen sich dazu auch noch die Tabellenabstände zum Seitenrand "oben" bzw. "links" explizit einstellen. Aber auch dann kann mit dem Options-Häkchen "relativ" die Tabellenbreite prozentual eingestellt werden - genau so, wie man es von HTML kennt.
Das Problem:
Bisher habe ich nur von der horizontalen Ausrichtung gesprochen weil unter OO eine vertikal-relative Ausrichtung nicht möglich ist. Auch die Höhe der Tabellenzeilen läßt sich nur absolut in cm einstellen. Die Festlegung des Tabellenabstands zum unteren Rand mit "0 cm" hat überhaupt keine Wirkung! Damit ist eine dynamische Positionierung nach unten bzw. eine vertikale Dehnung/Stauchung der Tabelle leider nicht möglich und wir verlassen die schöne HTML-Konformität!
Gibt es hierzu vielleicht ein bekanntes "workarround"?
Sollte ich diesen Thread doch besser in die Rubrik HTML stellen?
Grüße aus dem fernen Dresden:
ejomi