Dein Gehirn bei der Front-End-Entwicklung

Avatar of Chris Coyier
Chris Coyier am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Teil des Jobs eines Front-End-Entwicklers ist die Anwendung verschiedener Techniken und Technologien, um die gewünschte UI und UX zu realisieren. Vielleicht arbeitest du mit einem Designteam und implementierst deren Entwürfe. Ich weiß, wenn ich ein Design sehe (verdammt, selbst wenn ich weiß, dass ich es nicht bauen werde), beginnt mein Front-End-Gehirn, alle möglichen Dinge auszulösen, von denen ich weiß, dass sie mit der Aufgabe zusammenhängen.

Schauen wir uns an, was ich meine.

Schauen Sie sich diese entzückende Dribbble-Aufnahme für eine Rezept-Website von Riko Sapto Dimo an.

Es ist ein sehr ansprechendes Design, und es gibt vieles zu bedenken aus der Perspektive des Front-End-Webdesigns und der Entwicklung.

Wir werden uns hauptsächlich mit Designmuster-Entscheidungen und HTML/CSS-Technologie-Entscheidungen befassen. Es gibt noch viel mehr im Job eines Front-End-Entwicklers. Barrierefreiheit! Leistung! Semantik! Designsysteme! Alles wichtige Dinge.

Mehrzeiliger gepolsterter Text

Ah ja, dieser Look, bei dem Text einen Hintergrund hat, der der Länge der Textzeilen folgt. Wir haben das früher Multi-Line Padded Text genannt und uns verschiedene Wege angesehen, dies zu tun. Der einfachste und modernste Weg ist mit box-decoration-break.

Sehen Sie den Pen Multiline Padding with box-decoration-break von Chris Coyier (@chriscoyier) auf CodePen.

Flexbox-Header

Dieser Headerbereich schreit förmlich nach Flexbox. Es ist ein Layout in einer Richtung mit Elementen unterschiedlicher Größe und unterschiedlichem Abstand dazwischen. Dies in Flexbox auszudrücken, wird einfacher sein als jede andere Methode und erfordert keine feste Größenbestimmung oder magische Zahlen – ganz zu schweigen von der Flexibilität!

Grid-Layout

Das gesamte Seitenlayout hier könnte schön mit CSS Grid ausgedrückt werden. Denken Sie daran, dass Flexbox und Grid nicht im Widerspruch zueinander stehen. Ein Element, das in einer Grid-Zelle platziert ist, kann Flexbox sein! Wie der obige Header macht das Sinn. Der Hauptinhaltsbereich und der Footer als Grid-Zellen könnten wahrscheinlich beides sein.

Vertikale Schrift

Nicht die offensichtlichste Sache, die man umsetzen kann! Ihre beste Wahl sind Schreibmodi. Jen Simmons hat darüber geschrieben, und hier ist eine Demo

Sehen Sie den Pen Writing Mode Demo — Headline von Jen Simmons (@jensimmons) auf CodePen.

Zeilenbegrenzung

Hier scheint eine Kürzung stattzufinden. Generell würden wir aus Leistungssicht wahrscheinlich wollen, dass die gesendeten Daten nur einige Zeilen lang sind. Aber auch das Frontend kann hier helfen, wenn es sein muss. Hier werden drei Textzeilen mit Auslassungspunkten am Ende angezeigt. Vielleicht muss das Design wirklich, dass der Text immer maximal drei Zeilen lang ist. Das nennt man Zeilenbegrenzung.

Sehen Sie den Pen Line Clampin’ von Chris Coyier (@chriscoyier) auf CodePen.

Benutzerdefinierte Schriftarten

Wie die meisten Websites heutzutage ist dieses Design mit benutzerdefinierten Webfonts überzogen. Bei einem so markanten Design wäre ich sehr vorsichtig mit meiner Schriftart-Lade-Technik. Mein Gefühl sagt mir, dass ich FOIT mehr als FOUT bevorzugen würde, und idealerweise würde ich diese Schriftartdatei so hart wie möglich cachen, damit wir beides so oft wie möglich vermeiden.

Text über Bildern

Der Text „Dinner Menu“ liegt direkt über einigen geschäftigen fotografischen Bildern darunter. Er ist trotzdem lesbar, hauptsächlich wegen des hellen Weiß des Textes über einem abgedunkelten Bild. Wir haben dies in der Vergangenheit im Detail behandelt. Weißer Text über einem abgedunkelten Bild ist im Allgemeinen die beste Wahl, und zwar so abgedunkelt, dass fast jedes Bild in Ordnung ist. Es gibt jedoch auch andere Optionen, wie z. B. Verläufe und Unschärfe (was auch im Footer verwendet wird)

Sehen Sie den Pen ByKwaq von Chris Coyier (@chriscoyier) auf CodePen.

SVG-Icons / Sternebewertungen

Es gibt eine Reihe von einfachen Vektor-Icons, die über das Design verteilt sind. Das sind sichere Werte für ein SVG-Icon-System. Dies ist meine aktuelle Empfehlung für die Herangehensweise an ein SVG-Icon-System. Inline das SVG. Einfach und leistungsstark.

Diese Sternebewertungen sind wahrscheinlich auch im SVG-Bereich. Hier ist eine gute Sammlung von Optionen. Die fortschrittliche Verbesserung von Radio-Buttons scheint immer eine kluge Vorgehensweise zu sein.

Sehen Sie den Pen CSS: Radio Input Stars von Jake Albaugh (@jakealbaugh) auf CodePen.

Hamburger

Es mag auf einem so großen Bildschirm wie diesem etwas überflüssig erscheinen, besonders da bereits eine Navigation sichtbar ist. Aber hey, es ist heutzutage schwer zu vermeiden und es gibt etwas zu sagen über das Trainieren von Benutzern, wo die Seitennavigation stattfinden kann, egal wo sie auf die Seite schauen.

Hier ist eine Sammlung dieser Art von Menüs.

Sehen Sie den Pen Hamburger menu flip with text change von Eric Grucza (@egrucza) auf CodePen.


Gibt es noch etwas im Design, das ich nicht erwähnt habe und das Ihnen sofort in den Sinn kommt?