Ich möchte, dass die Textfelder in meinem Formular genauso erscheinen wie die Texteingabefelder, browserübergreifend. Und ich möchte keinen benutzerdefinierten Stil erzwingen - ich möchte einfach den Standard-Stil im Browser des Benutzers verwenden.
Also ich weiß, ich könnte
verwenden %Vor%und dann würden sie in Chrom [e, ium] zusammenpassen, aber dann passen sie nicht zum Beispiel auf Firefox / Iceweasel.
Also gibt es eine direkte Möglichkeit, um zu dem Browser zu sagen: "render textarea
elements mit dem Rand, den du für input[type="text"]
verwendest"?
Die Antwort auf die eigentliche Frage lautet: Nein, es gibt keine Möglichkeit zu sagen: "Lass dieses Element wie dieses aussehen." Sie können jedoch sicherstellen, dass sie konsistent aussehen, indem Sie den Text sowohl auf die Textfläche als auch auf die Eingabe anwenden. In manchen Browsern sehen bestimmte Dinge jedoch auf eine bestimmte Art und Weise aus.
%Vor%In HTML5 wurden andere Eingabearten als "text" eingeführt. Zum Beispiel gibt es die Eingabearten "password", "number" und "email", die wie "text" -Eingänge aussehen, aber spezielle Verhaltensweisen haben. Damit alle konsistent aussehen, müssen Sie für jeden Eingabetyp in Ihrem CSS Definitionen bereitstellen.
%Vor%Für eine vollständige Liste der möglichen Eingabetypen finden Sie hier eine Referenz .
Die akzeptierte Antwort ist korrekt, aber ein bisschen veraltet. Als Alternative zum Festlegen des Rahmenstils, der Rahmenfarbe und der Rahmenbreite können Sie die Steuerelemente beibehalten, indem Sie Aussehen , mit seinen Präfixen:
%Vor% Damit stellen Sie sicher, dass Ihre Textbereiche und Ihr Textfeld übereinstimmen (* in einigen Browsern). Wenn Ihnen der Textbereich besser gefällt, können Sie dasselbe tun, aber stattdessen den Wert textarea
verwenden.
Alle Vorbehalte mit Präfixen gelten.