phpbar.de logo

Mailinglisten-Archive

[php] [OT] Breite eines Labels mittels CSS im Firefox

[php] [OT] Breite eines Labels mittels CSS im Firefox

Sebastian Mendel lists at sebastianmendel.de
Don Apr 6 17:05:23 CEST 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Stefan Brueckmann schrieb:
> Hallo Sebastian Mendel,
> 
> am Donnerstag, 6. April 2006 14:19 schriebst du:
> 
> 
>> Wenn du etwas 'allgemeineres' suchst wären Tabellen hierfür
>> geradezu prädestiniert
> 
> ;-) Zurück in die Steinzeit.
> 
>> <fieldset>
>>
>> <table>
>> <tr><th><label for="name">Name</label></th>
>>     <td><input id="name" type="text" /></td></tr>
>> <tr><th><label for="email">E-Mail</label></th>
>>     <td><input id="email" type="text" /></td></tr>
>> ...
>> </table>
>>
>> </fieldset>
> 
> Grauenvoll :-(
> 
>> Und bevor jetzt jemand was gegen Tabellen-Layout sagt: Formulare
>> sind Datenabfragen und Daten werden nunmal (meißt) in Tabellen
>> dargestellt. 
> 
> Was ist das denn für eine Logik?
> Formulare sind keine Tabellen!

Nein, natürlich sind Formulare keine Tabellen, sagt ja auch keiner
Aber Formulare sind für Daten und Tabellen sind für Daten.


> Grundsätzlich gibt es frei verschiede Möglichkeiten.
> 
> 1.)
> <label for="Email">E-Mail</label>
> <input name="email" id="Email" type="text /><br />
> 
> 2.)
> <div><label for="Email">E-Mail</label>
> <input name="email" id="Email" type="text /></div>
> 
> 3.)
> <label for="Email">E-Mail
> <input name="email" id="Email" type="text /></label>
> 
> 
> Wegen der Kürze wird gerne die dritte Version genommen und per CSS 
> festgelegt, das nach dem Label Element eine neue Zeil beginnt.
> Beachte: Das for im Label und die id beim zugehörenden Input muss 
> immer gleich geschrieben sein, muss aber nichts mit dem Namen des 
> Inputfeldes zu tun haben. Die Id darf im ganzen Formular nur einmal 
> vorkommen. (Das macht die Programmierung so richtig spannend.)
> 
> 
> Das Ganze Formular wird gerne noch in 
> <fieldset> </fieldset> gepackt also direkt nach dem form tag
> 
> Dann kann man noch Beschreibung mit 
> <legend>Bla bla</legend>
> einfügen und weiterhin bestimmte Gruppen noch einmal mit einem 
> fieldset umschließen und so zusammenfassen.
> 
> Als Gesamtkunstwerk ist es auf meiner Hompage
> http://www.dr-brueckmann.com/deu/~email.html
>  (Kontaktformular) zu bewundern.

und sieht in einem Text-Browser auch wirklich sehr toll aus ...

ganz abgesehen davon das die Seite etwas komisch aussieht auf meinem
System, in allen drei Browsern (Firefox, IE und Opera) denn es gibt auch
Systeme mit anderen Schriftgrößen.

Und es gibt auch einige Leute die wenig platz haben auf ihrem Monitor,
und diesen wenigen Platz vergeudest du auch noch mit einem künstlichen
Freiraum links und rechts.

... erzähl mir bitte nichts von Usability - und das ist das wichtigste
einer Seite - nicht ob mit oder ohne Tabelle!


Und das eigentliche Problem ist das es keine Möglichkeit gibt per CSS zu
sagen das alle Label so groß sind wie der längste Text in einem der
Label, die Formular-Felder also immer bündig sind, und keine Platz vor
dem Labeltext unnötig verschenkt wird, ohne beim schreiben des CSS zu
wissen was in dem Label stehen wird.

Deine Lösung muss also für ein Optimales aussehen immer per Hand an
jedes Einzelne Formular angepasst werden, ebenso wenn sich ein Labeltext
mal ändert.


- --
Sebastian Mendel

www.sebastianmendel.de
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (MingW32)

iD8DBQFENS4zX/0lClpZDr4RAlNYAJ0WC/KokwhUJ6M/1cWtg3h4VjWM7QCcDu9Y
qsr7v1x9xn0+ELMcFW1ly5w=
=aFeJ
-----END PGP SIGNATURE-----

php::bar PHP Wiki   -   Listenarchive