Ich habe ein Formular auf meiner Seite und ich möchte alle Textfelder so positionieren, dass die linken Kanten alle in einer Linie sind.Floating Labels und Divs auf einem Formular
Ich habe den folgenden Code geschrieben, die in Firefox funktioniert gut:
<style type="text/css">
label {
float: left;
clear: both;
width: 250px;
margin-top: 10px;
}
input {
float: left;
margin-top: 10px;
}
</style>
<label>First Name:</label>
<input type="text" name="fname">
<label>Last Name:</label>
<input type="text" name="lname">
<label>Phone Number:</label>
<input type="text" name="phone">
jedoch, wenn in IE6 die Textfelder betrachtet sind alle auf einer Linie, wo die Etiketten positioniert sind, wie ich sie sein wollen. Ich habe versucht, das Problem stundenlang zu sortieren und das einzige, was ich mit oben kommen kann, ist eine Spanne dazwischen jedes Etikett/Textbox Kombination zu platzieren, die den Schwimmer löscht, etwa so:
<label>First Name:</label>
<input type="text" name="fname">
<span style="clear: both;"></span>
<label>Last Name:</label>
<input type="text" name="lname">
<span style="clear: both;"></span>
<label>Phone Number:</label>
<input type="text" name="phone">
aber ich weiß, das ist nicht korrekt, da leere Elemente nicht erlaubt sind. Irgendwelche Ideen, wie ich meine Probleme umgehen und das Layout in beiden Browsern gleich machen kann.
Dank
Leere Elemente sind nur erlaubt. Es ist nur, dass es hässlich ist (schlechte Semantik, schwieriger zu pflegen etc.). – mercator