2016-03-23 23 views
3

Warum zum Beispiel <select> und <textarea> sind allein Tags anstelle von Attributen von <input> stehen?Warum ist in HTML kein Eingabeformat ausgewählt?

+1

Weil Geschichte. https://en.wikipedia.org/wiki/HTML5. Als HTML ein Baby war, hatte es getrennte Tags, und dann blieben sie so, weil zu viel Veränderung schmerzt. Wenn Sie denken, dass sich das ändern sollte, treten Sie dem Team bei, das die Spezifikation für HTML6 schreibt? –

+0

@TimOgilvy das könnte eine Antwort sein, und vermeiden Sie, diese Frage zu schließen (die ohne Ihren Kommentar fügt wenig Wert hinzu). – nha

+1

@nha danke. Ich habe es versucht. –

Antwort

6

<select> ist ein verschachteltes HTML-Element, während <input> nicht ist. Zum Beispiel <select> Element enthält <option> Elemente darin eingebettet.

Soweit TextArea- betrifft, in dem ursprünglichen Entwurf für Formulare, mehrzeiligen Textfelder wurden durch das Eingangselement mit TYPE = TEXT unterstützt. Leider verursacht dies Probleme für Felder mit langen Textwerten. Der SGML-Standard (Reference Quantity Set) begrenzt die Länge von Attributliteralen auf nur 240 Zeichen. Die HTML 2.0 SGML-Deklaration erhöht sich die Grenze auf 1024 Zeichen.)

Ich denke, dies ist der Grund, warum wir separate Tags für diese Elemente haben.

3

So eine hoffentlich vollständigere Antwort geben einige Informationen von @ BackMaba07 Antwort enthält:

HTML (wikipedia article) als ein neuer Standard wurde, wurde es basiert ursprünglich auf SGML. Im Laufe der Zeit wurde es entwickelt und erweitert. Die Tags für Web-Formulare sind in den HTML 2.0 standard eindeutig festgelegt, wo <INPUT>, <SELECT> und <TEXTAREA> separat definiert sind, wahrscheinlich aus den Gründen BlackMamba07 beschreibt:

<select> ist ein verschachteltes HTML-Element, während nicht. Zum Beispiel <select> Element enthält Elemente darin verschachtelt.

Soweit <textarea> betroffen ist, wurden mehrzeilige Textfelder im ersten Entwurf für Formulare durch das Eingabeelement mit TYPE = TEXT unterstützt. Leider verursacht dies Probleme für Felder mit langen Textwerten. Der SGML-Standard (Reference Quantity Set) begrenzt die Länge von Attributliteralen auf nur 240 Zeichen. Die HTML 2.0 SGML-Deklaration erhöht sich die Grenze auf 1024 Zeichen.)

Nachfolgende Versionen von HTML haben beteiligt viel streiten und Verhandlungen und Diskussionen zwischen den beteiligten Parteien, einschließlich WHATWG und der W3C.

Obwohl ein Fall könnte wahrscheinlich gemacht werden, dass Formularelemente, die keine Eingaben sind nervig ist, wenn Sie Scripting oder CSS verwenden, um alle Elemente in einem Formular zu ändern, war es wahrscheinlich nie ein großes Problem, um es zu machen die Diskussionstabelle.

Es gibt nichts Absolutes, nur ein Haufen alter Männer (und ich bin glücklich, zu sagen, immer mehr Frauen und Jugendliche) streiten über Standards.

Es gibt beträchtliche Debatte hier auch bei SO über das, was Spezifikation gilt. Zum Beispiel: HTML5: W3C vs WHATWG. Which gives the most authoritative spec?

Der spannende Teil ist, wenn Sie genug kümmern, können Sie sich der Konversation anschließen, und zu Wort kommen. Sie werden gegen einige erfahrene Aktivisten tho sein. Habe Spaß!

Verwandte Themen