{"id":341,"date":"2021-08-14T19:40:49","date_gmt":"2021-08-14T19:40:49","guid":{"rendered":"https:\/\/erdbeerbeet.com\/?p=341"},"modified":"2021-08-26T19:22:39","modified_gmt":"2021-08-26T19:22:39","slug":"web-forms-design","status":"publish","type":"post","link":"https:\/\/erdbeerbeet.com\/de\/web-forms-design","title":{"rendered":"Web-Formulare &#8211; Design"},"content":{"rendered":"\n<p>Mit heutigem Stand habe ich von meiner Arbeit her eine ganze Menge mit Web-Formularen zu tun gehabt. Um die Handhabe aber noch weiter zu verbessern m\u00f6chte ich endlich mal ein paar grundlegende Prinzipien f\u00fcr mich begreifen. Wie entwirft bzw. designt man ein gutes Formular und wie kann man sie einfach und gr\u00fcndlich testen, um sowohl Sicherheit als auch eine gute Benutzererfahrung zu garantieren?<\/p>\n\n\n\n<p>Das hier wird ein mehrteiliger Beitrag und folgt meinem Durchackern all der Artikel zu dem Thema. Zuerst geht es um das grundlegende Design eines Web-Formulars. Bevor die erste Zeile Code geschrieben wird m\u00fcssen bereits Entscheidungen getroffen werden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ressourcen<\/h2>\n\n\n\n<p>Wie \u00fcblich habe ich hier einige f\u00fcr mich n\u00fctzliche Artikel zusammen gesammelt. Ich freue mich \u00fcber weitere Empfehlungen in den Kommentaren und werde die Liste auch gerne um deutsche Eintr\u00e4ge erg\u00e4nzen.<\/p>\n\n\n\n<p><a href=\"https:\/\/blog.hubspot.com\/marketing\/a-b-test-landing-page-form-copy\">&#8220;Forms Testing: What It Is and How to Do It&#8221; (von Rebecca Riserbato)<\/a> gibt eine ausgezeichnete \u00dcbersicht \u00fcber die verschiedenen Problematiken, um die man sich beim Thema Web-Formulare k\u00fcmmern muss. Die meisten meiner Punkte sind von hier.<br><a href=\"https:\/\/www.jotform.com\/form-design\/\">46 Form Design Best Practices (von Aytekin Tank)<\/a> ist ein detaillierter Beitrag \u00fcber Web-Design und wie man Formulare entwirft, die Benutzer gerne ausf\u00fcllen. Er enth\u00e4lt auch viele Verweise auf Psychologie und Statistik.<br>Ein guter Anfang bieten auch &#8220;<a href=\"https:\/\/www.webdesignerdepot.com\/2017\/03\/7-secrets-for-designing-great-forms\/\">7 Secrets for Designing Great Forms&#8221; (von Carrie Cousins)<\/a> um einen \u00dcberblick \u00fcber die wichtigsten Aspekte zu bekommen, genauso wie <a href=\"https:\/\/cxl.com\/blog\/form-design-best-practices\/\" class=\"broken_link\">&#8220;Form Design: 13 Empirically Backed Best Practices&#8221; (von Alex Birkett)<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Layout<\/h2>\n\n\n\n<p>Das Layout ist besonders f\u00fcr gro\u00dfe Formulare wichtig. Felder m\u00fcssen anhand ihres Inhaltes <strong>gruppiert<\/strong> werden (z.B. Adresse, Kontodaten), mit <strong>\u00dcberschriften<\/strong>, <strong>Trennern<\/strong> und dem Aufteilen auf <strong>mehrere Schritte<\/strong> bekommt der Benutzer das Formular in mundgerechten Happen gereicht. Wenn mehr als eine Seite genutzt wird, sollte immer eine irgendwie geartete <strong>Fortschrittsanzeige<\/strong> genutzt werden.<br>Wenn m\u00f6glich sollte nur <strong>ein Feld pro Zeile<\/strong> angezeigt werden und Dropdowns kommen nur zum Einsatz, wenn sie wirklich n\u00f6tig sind (lieber Radiobuttons verwenden).<br>Ich bitte darum, die oben verlinken Artikel zu lesen, f\u00fcr noch mehr Hinweise, Tipps und Tricks.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Farben<\/h2>\n\n\n\n<p>Wie es auch f\u00fcr die Webseite insgesamt gilt sollte ein Formular visuell ansprechend sein. Man kann sich lange mit Farbtheorie besch\u00e4ftigen um herauszufinden, welche Farben besonders geeignet sind. Am besten l\u00e4uft man mit dem Farbthema der Seite und beachtet weiterhin einige Details.<\/p>\n\n\n\n<p>Keine hellen oder ungew\u00f6hnlichen Farben f\u00fcr Text und Bedienelemente verwenden. Das Stichwort hier ist Barrierefreiheit. Mit Seiten wie <meta charset=\"utf-8\"><a href=\"https:\/\/whocanuse.com\/\">WhoCanUse.com<\/a> kann der <strong>Kontrast<\/strong> zwischen Hintergrund und Textfarbe analysiert werden.<br>Wenn <strong>Fehler<\/strong> an Feldern angezeigt werden, sollte das nicht nur durch eine farbige Umrandung geschehen, sondern immer mit einem <strong>zus\u00e4tzlichen Fehlertext<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mobil zuerst<\/h2>\n\n\n\n<p>Bitte bitte achtet darauf, wie das Formular mobil aussehen wird. Das bedeutet die Nutzung von <strong>Responsive Design<\/strong>, aber auch das Testen auf echten Ger\u00e4ten um zu sehen, wieviel Platz die <strong>Tastatur<\/strong> einnimmt, oder ob <strong>Autovervollst\u00e4ndigung<\/strong> und <strong>automatisches Ausf\u00fclle<\/strong>n so funktionieren, wie sie sollen.<br>Einige Browser und Werkzeuge k\u00f6nnen kleinere Bildschirmgr\u00f6\u00dfen emulieren, aber ein echtes Ger\u00e4t h\u00e4lt manchmal noch einige unerwartete T\u00fccken bereit (ich spreche da aus Erfahrung).<br><strong>Mobile Browser<\/strong> haben andere Standards (und Bugs) als die auf dem Desktop und immer daran denken, dass ein Telefon <strong>Landschafts- und Portrait-Modus<\/strong> kann.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Feld-Typen und Validatoren<\/h2>\n\n\n\n<p>Sogar HTML kann verschiedene <strong>Typen von Eingabefeldern<\/strong> unterscheiden. Es gibt z.B. Text, numeral oder eMail &#8211; und die sollten definitiv auch benutzt werden. Wieder geht es hier besonders um mobile Ger\u00e4te, auf denen der Benutzer besser einen Nummernblock angezeigt bekommen sollte, wenn er seine Kartennummer eingeben muss (statt der normalen Tastatur).<\/p>\n\n\n\n<p>Die <strong>Benennung von Feldern<\/strong> in HTML wird h\u00e4ufig \u00fcbersehen. Neben der besseren Syntax sind Funktionen wie automatisches Ausf\u00fcllen davon abh\u00e4ngig, dass ein eMail-Feld auch mit &#8220;email&#8221; benannt ist (\u00fcber die id und\/oder den Namen des Input-Tags). Wenn wir schon bei dem Thema sind; Label sollten so kurz und selbsterkl\u00e4rend wie m\u00f6glich sein. Im Zweifelsfall sorgen <strong>Info-Icons<\/strong> mit einem Popup f\u00fcr die n\u00f6tigen Zusatzinformationen.<\/p>\n\n\n\n<p>Dann gibt es <strong>Platzhalter<\/strong> und <strong>vor-ausgef\u00fcllte Felder<\/strong>, die dem Nutzer das Ausf\u00fcllen erleichtern.<\/p>\n\n\n\n<p>Alle Frameworks enthalten irgendeine Art von <strong>Validatoren<\/strong> f\u00fcr Formular-Felder. Vom \u00fcberpr\u00fcfen des korrekten Formats einer eMail-Adresse, \u00fcber die korrekte L\u00e4nge einer Nummer bis zur Information mehrerer Felder, die in Kombination eine besondere Voraussetzung erf\u00fcllen und so weiter. Trotzdem sollten Validatoren eher zur\u00fcckhaltend verwendet werden; nur die wirklich notwendigen Felder sollten <strong>Pflichtfelder<\/strong> sein (das ist auch eine Frage von Datenschutz) und zu krasse Einschr\u00e4nkungen k\u00f6nnen auch unerw\u00fcnschte Effekte haben (z.B. f\u00fcr ungew\u00f6hnliche Namen).<br>Wird ein komplizierter Validator angewandt, dann sollte der Benutzer dar\u00fcber <strong>informiert<\/strong> werden. Das ist z.B. f\u00fcr das Setzen eines Passworts relevant, wenn die Regeln hierf\u00fcr sonst eher verwirren, als f\u00fcr mehr Sicherheit sorgen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Navigation<\/h2>\n\n\n\n<p>Wenn das Formular mehrere Felder umfasst, dann sollte es seine <strong>eigene Seite<\/strong> erhalten. Am besten mit einer kurzen <strong>Willkommen<\/strong>-Seite, welche das Formular vorstellt, worum es dabei geht und wie lange der Benutzer zum Ausf\u00fcllen voraussichtlich ben\u00f6tigt. Nach dem erfolgreichen Absenden des Formulars muss es noch eine entsprechende Benachrichtigung geben, per <strong>eMail und Erfolg-Seite<\/strong>.<\/p>\n\n\n\n<p>Wenn Teile des Formulars optional sind sollten sie besser nur dann angezeigt werden, wenn sie auch relevant sind.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Weitere Design-Prinzipien<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Nutze leicht verst\u00e4ndliche Sprache f\u00fcr Fragen und Fehlermeldungen.<\/li><li>Beachte die Tabulator-Reihenfolge f\u00fcr Barrierefreiheit.<\/li><li>&#8230;<\/li><\/ul>\n\n\n\n<p>Lasst mich wissen, wenn ich noch fundamentale Design-Grundlagen \u00fcbersehen habe. Hier nochmal eine klare Empfehlung f\u00fcr die verlinkten Artikel &#8211; sie enthalten detaillierte Listen mit Tipps und Fallstricken, wenn es um das entwerfen von Web-Formularen geht.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Checkliste<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Der Farbkontrast zwischen Hintergrund und Text sollte hoch genug sein, um Barrierefreiheit zu erm\u00f6glichen (das betrifft Input-Felder und Label).<\/li><li>Felder sind nach Themen gruppiert und bei Bedarf auf mehrere Seiten verteilt.<\/li><li>Felder sind programmatisch korrekt mit id, name, label, Platzhalter, Info-Button und Tabulator-Reihenfolge versehen.<\/li><li>Validatoren werden mit Hilfe von Feld-Typen hinzugef\u00fcgt, nach dem Prinzip so viel wie n\u00f6tig.<\/li><li>Fehler werden am Feld und mit einer f\u00fcr den Benutzer eindeutigen Nachricht angezeigt.<\/li><li>Das Formular wird mit Willkommen- und Erfolgs-Seite, sowie einer Fortschrittsanzeige eingerahmt.<\/li><li>Responsive Desing ist wichtig, um das Formular mobil zug\u00e4nglich zu machen.<\/li><li>Abh\u00e4ngigkeiten zwischen Feldern (bez\u00fcglich Validierung und Sichtbarkeit) m\u00fcssen eindeutig im Vorfeld definiert werden.<\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Manche Webanwendungen kommen nicht um mehr oder weniger umfangreiche Formulare herum. Hier gilt das richtige Vorgehen, angefangen beim durchdachten Design.<\/p>\n","protected":false},"author":1,"featured_media":384,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,36],"tags":[40,39,38],"class_list":["post-341","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programming","category-web-programming","tag-design","tag-forms","tag-web"],"translation":{"provider":"WPGlobus","version":"3.0.0","language":"de","enabled_languages":["en","de"],"languages":{"en":{"title":true,"content":true,"excerpt":true},"de":{"title":true,"content":true,"excerpt":false}}},"_links":{"self":[{"href":"https:\/\/erdbeerbeet.com\/de\/wp-json\/wp\/v2\/posts\/341","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/erdbeerbeet.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/erdbeerbeet.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/erdbeerbeet.com\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/erdbeerbeet.com\/de\/wp-json\/wp\/v2\/comments?post=341"}],"version-history":[{"count":14,"href":"https:\/\/erdbeerbeet.com\/de\/wp-json\/wp\/v2\/posts\/341\/revisions"}],"predecessor-version":[{"id":378,"href":"https:\/\/erdbeerbeet.com\/de\/wp-json\/wp\/v2\/posts\/341\/revisions\/378"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/erdbeerbeet.com\/de\/wp-json\/wp\/v2\/media\/384"}],"wp:attachment":[{"href":"https:\/\/erdbeerbeet.com\/de\/wp-json\/wp\/v2\/media?parent=341"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/erdbeerbeet.com\/de\/wp-json\/wp\/v2\/categories?post=341"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/erdbeerbeet.com\/de\/wp-json\/wp\/v2\/tags?post=341"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}