# [Formular] Textfeld-Breite festlegen



## MAN (20. August 2004)

Hallo,

wie kann ich denn explizit die Breite eines Textfeldes (input) in Pixel angeben?

Mit dem Attribut "size=" bekomme ich ja nur die Breite von x-Buchstaben.

Habe nämlich das Problem, dass ich zwei Felder habe (wie beim Login) einmal Username und das andere Passwort. Wenn ich jetzt die Eigenschaft bei dem einen auf "text" und beim anderen auf "password" setze, dann sind beide bei der Eigenschaft "size=20" nicht gleich breit!

Dies wollte ich eben durch die genaue Pixelbreite angeben.

Wer die Lösung, oder einen Workaround parat hat, immer her damit 


mfG,
MAN


----------



## Fabian H (20. August 2004)

Das geht mit CSS:

```
<input type="text" style="width:123px;" />
```


----------



## MAN (21. August 2004)

Cool, danke!  

Man lernt nie aus ^^

mfG,
MAN


----------



## xxenon (21. August 2004)

Mal umgekehrt =)

Kann man mit CSS Breiten auch relativ zur Buchstabenbreite angeben?


MfG.


----------



## mini_xs (21. August 2004)

Ungetestet, aber wenn du die Schriftgröße in ems angibst und die Breite auch in ems sollten die beiden Größen passen.

Wie gesagt ungetestet.

Viele Grüße Stefan


----------



## xxenon (21. August 2004)

Hab auf die Anregung von mini_xs hin mal ein bisschen rumprobiert und bin zu folgenden Erkenntnissen gekommen:

Sowohl Internet Explorer als auch Mozilla ignorieren Breitenangaben für Textfelder in 'ems' ^^.

Daher verwendete ich Angaben in 'pt'.

Des weiteren ist es sinnvoll eine Schriftart zu verwenden, bei der alle Zeichen gleich breit sind: 'monospace'.


Da Schriftgröße zwar gleich Schrifthöhe aber nicht gleich Schriftbreite ist und letztere nicht so einfach zugewiesen werden kann, braucht man das Verhältnis zwischen Höhe und Breite der Schrift: (bei 'monospace')  h / b = 3 / 2.


z.B.:


```
Breitenangaben in 'pt', es sollten genau 10 Zeichen in das Textfeld passen:<br/>
<input type="text" style="font-family:monospace; font-size:12pt; width:80pt;" />
```


Bin mal gespannt, wann der Erste mit einer weit einfacheren Lösung daherkommt  =)

MfG.

xxenon


----------



## Fabian H (21. August 2004)

Naja, das _size_-Attribut ist noch im XHTML 1.1 DTD drin. Was spricht dagegen, es durch CSS zu ersetzen?

Also wenn du eine bestimmte Breite an Zeichen brauchst, dann würde ich _size_ benutzen.
Hat auch den positiven Nebeneffekt, dass Textbrowser das Feld dann auch in der gewünschten Breite anzeigen.


----------

