1UnitedPower: input oder button für submit-Elemente?

Beitrag lesen

Hakuna matata!

Ich habe mir erlaubt, einen Blog-Artikel darüber zu verfassen.

Prägnant auf den Punkt gebracht.

Deine Argumentation für die <input>-Buttons, wenn mehrere Submit-Buttons im Spiel sind, finde ich interessant. Dazu möchte ich gern meine abweichende Meinung erläutern, denn aus meiner Sicht reduzierst du das Semantik-Argument zu sehr auf die Tagnamen der Elemente: <input> stehe für Benutzereingaben, <button> stehe für Aktionen.

Der generische Begriff "Benutzereingabe" wird im Standard als Submittable Elements formalisiert. Das sind Elemente, die beim Abschicken eines Formulars Schlüssel/Werte-Paare zu den Formulardaten beitragen. In dieser Kategorie tummeln sich neben dem <input>-Element auch die Artverwandten <textarea>, <select> und eben auch der <button>. Die Kategorie verleiht den beinhalteten Elementen also eine Semantik, die über die reinen Tagnamen hinausgeht.

Dein Argument zielt eigentlich weniger auf die Semantik der Elemente, sondern mehr auf deren Expressivität ab. So betrachtet kann ich deinen Punkt auch sehr gut nachvollziehen.

Der <button> hat gegenüber dem <input type="submit"> allerdings den klaren Vorteil, dass seine Beschriftung, von dessen Wert abweichen kann.

<button name="action" value="0">reparieren</button>
<button name="action" value="1">deinstallieren</button>

Das verarbeitende Skript, das das Formular entgegen nimmt, muss dann keine Entscheidungen auf Basis (möglicherweise sprachabhängiger) Beschriftungen treffen.

--
“All right, then, I'll go to hell.” – Huck Finn