Gestaltung unserer Behance-Portfolio-Website mit LESS

Im vorigen Teil dieser Serie haben wir etwas über die Behance-API erfahren, mit deren Hilfe die Portfolio-Teile eines Benutzers erfasst und auf einer Webseite angezeigt werden. In diesem Teil gestalten wir die Webseite und präsentieren die Portfolio-Teile entsprechend attraktiv. 

Tools, die wir verwenden werden

Um zu beginnen, werden wir unser Toolkit vorbereiten:

Normalisieren

Wir verwenden Normalize, um die grundlegenden Elementstile in verschiedenen Browsern konsistenter zu gestalten und die Wahrscheinlichkeit unerwarteter Ergebnisse zu minimieren.

WENIGER Mixins-Bibliotheken

Wir werden LESS auch verwenden, um unsere Website zu gestalten. Welchen Präprozessor Sie auch bevorzugen, es ist auf jeden Fall empfehlenswert, sie in Ihrem Workflow zu verwenden. Ich bin ein großer Fan von, anstatt die gewünschte Farbe im Farbwähler aus einer separaten Anwendung herauszurollen, indem Sie einfach weniger Steuerungsfunktionen wie erleichtern() und verdunkeln() um uns verschiedene Farbvarianten zu geben.

Um uns weiter zu helfen, verwenden wir LESSHat, um uns beim Schreiben zu helfen Weniger Code mit seiner Mixins-Sammlung. Wir werden auch Remixins verwenden, die von Christopher Ramírez entwickelt wurden. Remixins ist eine Sammlung von Mixins, die konvertiert werden sollen px in rem units in. Die Sammlung enthält die Mixins zur Festlegung Schriftgröße, Spanne, Polsterung, Breite und Höhe, und CSS-Position (links, Recht, Unterseite, und oben).

Darüber hinaus benötigen wir auch ein Werkzeug, um LESS in reguläres CSS zu übersetzen. In diesem Tutorial verwenden wir eine App namens Koala, die unter Windows, OSX und Ubuntu verfügbar ist. Sie können natürlich jeden Compiler verwenden, den Sie bevorzugen, aber mit etwas Glück können Sie dieses Tutorial unabhängig von der verwendeten Plattform befolgen.

Weitere Informationen zu LESS finden Sie in den folgenden Tutorials:

  • Praktische Tipps zur Verwendung von WENIGER
  • Holen Sie sich in WENIGER: die programmierbare Stylesheet-Sprache

Google-Schriftarten

Standard-Systemfonts wie Arial machen das heute für mich einfach nicht. In diesem Tutorial werde ich stattdessen Google Fonts verwenden. Ich habe Cantata One als Überschrift und Open Sans als Standardtext ausgewählt. Dies ist eine persönliche Präferenz. Sie können Google Fonts ausschließen oder Alternativen verwenden, wenn Sie möchten.

Foundation Icon-Schriften

Auf unserer Website verwenden wir außerdem Schriftzeichensymbole für ein wenig Dekoration. Heutzutage haben wir eine Vielzahl von Optionen für Schriftsymbole. Bei meiner Suche war ich jedoch ziemlich überrascht, dass nur wenige dieser Schriftarten das Behance-Symbol in ihrer Sammlung enthalten. In diesem Fall verwenden wir in jedem Fall Foundation Icon Fonts 3, da es das Behance-Symbol enthält und auch über ein CDN verfügbar ist.

Einrichten unserer Assets und Tools

Erstellen Sie in unserem Projektstammverzeichnis einige neue Ordner mit dem Namen Weniger und css (Dies ist der Ausgabeordner der LESS-Datei). Erstellen Sie eine neue Datei namens style.less und greifen Sie auf Remixins sowie LESShat zu. Setzen Sie diese drei WENIGER Stylesheets in die Weniger Mappe. Zu diesem Zeitpunkt sollte die Liste der Dateien und Ordner in unserem Projektverzeichnis folgendermaßen aussehen:

| - css | - index.html '- weniger | - lesshat.less | - remixins.less' - style.less 

Fügen Sie dann Normalize, die Foundation Icon Fonts und unser Google Font-Stylesheet in das ein Kopf tag zusammen mit style.css, welches die Ausgabedatei sein wird style.less.

      

Öffnen Sie auch die Koala-App (oder welche Art von Kompilierung Sie bevorzugen) und fügen Sie unser Projektverzeichnis hinzu.

Das Projektverzeichnis in Koala

 Hinzufügen der Symbolzeichensätze

Bevor wir Stile schreiben, fügen wir unserer Website einige Symbole hinzu. Zuerst fügen wir die Kartenstandortmarkierung neben dem Standortelement des Benutzers mit ein fi-marker Klasse. Fügen Sie diese Klasse neben dem hinzu Profil-Standort Klasse wie folgt:

user.city, user.country

Dies wird eine hinzufügen :Vor Pseudoelement zum div, Einfügen des Markersymbols durch unsere Foundation-Icons. Als Nächstes fügen wir das Behance-Logo mit der Taste in den Fußzeilenbereich ein fi-soziales Verhalten Klasse.

Behance

Mixins und Variablen einrichten

Öffnen wir unseren style.less und importieren Sie sowohl lesshat.less als auch remixins.less mit  (Referenz) Kennzeichen.

@import (Referenz) 'lesshat.less'; @import (Referenz) 'remixins.less'; 

Das (Referenz) Marke wurde in WENIGER 1.5 eingeführt. Das bedeutet, dass LESS die Datei nur als Referenz verwendet. Der Inhalt wird nicht kompiliert und in die Datei ausgegeben. Es ist eine sehr leistungsfähige Funktion, die doppelte und unnötige Stile minimiert.

In style.less fügen wir die folgenden Variablen hinzu, die die Farbpalette und die Schriftfamilie unserer Website speichern.

@ bg-body: #fafafa; @ bg-header: # 303746; @ Farbbasis: # 353537; @ Farbname: # e0e0e0; @ color-title: # 6b919f; @ font-body: 'Open Sans', Arial, serifenlos; @ font-name: 'Cantata One', Georgia, Times, Serife; 

Das Platzieren dieser Variablen an einer Stelle dient als eine Art Style-Guide, hilft uns aber auch, unsere Styles auf bequemere Weise zu erhalten. Wenn beispielsweise auf der Website etwas geändert werden soll, können wir einfach den Wert innerhalb dieser Variablen ändern. Es ist eine viel sicherere Möglichkeit, Stile zu ändern, anstatt "Suchen und Ersetzen" auszuführen..

Beginnen Sie mit Stil

Grundlegende Elementstile

Obwohl wir Normalize hinzugefügt haben, das unsere Elementstile standardisiert hat, müssen wir noch einige Stile anpassen, um unseren besonderen Bedürfnissen zu entsprechen. Zu Beginn ändern wir die Größe der Box und setzen alle Box-Größen der Elemente (einschließlich der Pseudo-Elemente) auf Border-Box. Dies gibt unseren Dimensionen eine viel besser kontrollierbare Basis für die Arbeit. 

Das können wir mit der .Box-Sizing Mixins aus der LESSHat-Bibliothek wie folgt:

*, *: before, *: after .box-size (border-box);  

Als nächstes werden wir das einstellen html Schriftgröße bis 62,5%, Dies ist ein Ansatz, um relative Einheiten besser handhabbar zu machen.

html font-size: 62.5%;  

62,5% werden hier an dem Browserstandard von 1em gemessen, der 16px beträgt; 62,5% von 16px ist also gleich 10. Dadurch können wir leicht die Umwandlung von ermitteln rem im px durch Multiplizieren mit 10 multipliziert. 1.2rem zum Beispiel ist gleich 12px und so weiter. Wenn wir einen Blick auf remixins.less source werfen, finden wir außerdem die Basisschriftgröße in @ base-font-size-px Variable ist auf 10 gesetzt. 

Sie können diese Artikel für weitere Informationen zur relativen CSS-Einheit verwenden:

  • Ich nehme das "Erm ..." aus der Ems von Ian Yates
  • Ems noch weiter gehen von Ian Yates

Wir benutzen ein Zahl Element, das die Portfolioabdeckung des Portfolios enthält. Aber unser Zahl Das Element hat Randwerte von Normalize geerbt, was zu einem unbeabsichtigten Leerraum zwischen den Portfolio-Bildern führt. Hier entfernen wir also den Rand von Zahl Element.

Zahl Marge: 0; / * überschreiben Normalize.css Standardstil * / 

Der Clearfix-Hack

Die Verwendung eines Clearfix-Hacks ist eine beliebte Methode, um auf einige Layoutprobleme zurückzugreifen, die durch schwebende Elemente verursacht werden, die ihre untergeordneten Elemente nicht löschen können. Wir werden hier den Clearfix-Tipp von Nicolas Gallagher hinzufügen, den wir in LESS umgewandelt haben.

.clearfix * zoom: 1; &: before, &: after content: ""; Anzeige: Tisch;  &: after clear: both;  

Wenn Sie sich unsere HTML-Struktur ansehen, haben wir hinzugefügt Clearfix Klasse zu einigen Elementen.

Die Body Styles

Für die Karosserie, Wir werden die Schriftstile festlegen, die für die gesamte Seite gelten. Diese Stile umfassen die Schriftgröße, Schriftfarbe, Schriftbreite, Schriftfamilie und die Hintergrundfarbe. Hier verwenden wir die .Schriftgröße() mixin aus der Remixins-Bibliothek, um die Schriftgröße zu erzeugen. Alle Mixins in der Remixins-Bibliothek generieren eine px Unit Fallback, hilfreich für Browser, die das nicht unterstützen rem Einheit.

Körper .Font-Größe (16px); Hintergrundfarbe: @ bg-body; Farbe: @ Farbbasis; font-family: @ font-base; Schriftgewicht: 300;  

Nachdem Sie die Datei gespeichert haben, erstellt Koala die Ausgabe automatisch. Und der obige Code sollte in normalem CSS so aussehen.

body font-size: 16px; Schriftgröße: 1.6rem; Hintergrundfarbe: #fafafa; Farbe: # 353537; Schriftfamilie: 'Open Sans', Arial, Sans-Serif; Schriftgewicht: 300;  

Die Header-Stile

Als Nächstes werden die Stile für den Website-Header wie folgt hinzugefügt.

.Portfolio-Header .padding (50px, 0); Hintergrundfarbe: @ BG-Header; Text ausrichten: Mitte; .profile-avatar img .size (80px); Grenzradius: 50%;  .profile-name .font-size (24px); .margin-bottom (10px); Farbe: @ Farbname; Schriftfamilie: @ Schriftname; Schriftgewicht: 400;  .profile-Felder .max-width (320px); .font-size (14px); Farbe: Aufhellen (@ BG-Kopf, 50%); Rand links: auto; Rand rechts: auto; .field-list padding: 0;  .field-item Anzeige: Inline-Block; &: after content: ',';  &: last-child: after content: "; .profile-location .font-size (14px); color: heller (@ bg-header, 30%); &: vor .margin-right (10px); .font-size (18px); 

Dies ist ein ziemlich großes Stück Syntax, also lassen wir es in Stücke zerlegen und untersuchen, was es tut. Erstens haben wir in der Kopfzeile Hintergrundfarbe mit der in unserer gespeicherten Farbe hinzugefügt @ bg-Header Variable. Wir gebrauchen .Polsterung() Mixins von Remixins zum Hinzufügen von Füllungen an der Ober- und Unterseite des Headers, wodurch mehr vertikaler Leerraum entsteht. Wir haben auch hinzugefügt Text ausrichten: zentrieren So sieht unser Inhalt mehr in Ordnung.

.Portfolio-Header .padding (50px, 0); Hintergrundfarbe: @ BG-Header; Textausrichtung: Mitte;… 

Wir haben die Avatar-Bildgröße des Benutzers mit festgelegt .Größe() Mixins und kreisförmig gemacht, indem der Randradius auf 50% gesetzt wird. Sie können sehen, dass diese Stile in deklariert sind .Profil-Avatar img.

.Profil-Avatar img .size (80px); Grenzradius: 50%;  

Nachfolgend sind die Regeln für den Namen des Benutzers aufgeführt. Hier stellen wir die Schriftgröße mit ein .Schriftgröße() mixin. Wir haben die eingesetzt @ Farbname Variable für die Schriftfarbe und übergeben die Schriftfamilie mit der @Schriftfamilie Variable. Und schließlich haben wir hinzugefügt Schriftgewicht: 400; um die Schrift mutiger als der Rest aussehen zu lassen.

.Profilname .Font-Größe (24px); .margin-bottom (10px); Farbe: @ Farbname; Schriftfamilie: @ Schriftname; Schriftgewicht: 400;  

Als Nächstes betrachten wir die Regeln für den Bereich der User-Creative-Felder, auf die wir abzielen .Profilfelder. In Behance können Sie beliebig viele Fähigkeiten oder Feldspezialitäten hinzufügen. Das bedeutet, dass jeder Benutzer kurze oder sehr lange Skillbeschreibungen hat. Ich habe mich deshalb entschieden, die Breite mit a einzustellen maximale Breite. Wir haben die Schriftfarbe für 50% heller vom Hintergrund der Kopfzeile mit eingestellt aufhellen (@ bg-header, 50%).

Darüber hinaus ist jedes Feldelement durch ein Komma getrennt, das wir über ein :nach dem Pseudoelement. Logischerweise sollte das letzte Element jedoch kein Komma enthalten. Daher haben wir das letzte Element mit ausgewählt :letztes Kind und setze das Inhalt Eigenschaft, leer zu sein Inhalt:".

.Profilfelder max-Breite (320px); .font-size (14px); Farbe: Aufhellen (@ BG-Kopf, 50%); Rand links: auto; Rand rechts: auto; .field-list padding: 0;  .field-item Anzeige: Inline-Block; &: after content: ',';  &: last-child: after content: "; 

Nachfolgend sind die Stilregeln für die Gestaltung des Benutzerstandorts aufgeführt. Hier setzen wir die Farbe etwas heller als die Hintergrundfarbe, 30% um genau zu sein. Außerdem haben wir die Lücke zwischen dem Text und dem Markierungssymbol von Foundation Icon Fonts durch Hinzufügen etwas erweitert Rand rechts zum :Vor Pseudoelement.

.Profilposition .Font-Größe (14px); Farbe: Aufhellen (@ BG-Kopf, 30%); &: before .margin-right (10px); .font-size (18px);  

Nachdem Sie diese Stile hinzugefügt haben, sollte die Kopfzeile nun etwa wie folgt aussehen:

Gestaltung des Portfolio-Abschnitts

Das folgende Snippet enthält alle Stile für unser Portfolio.

.Portfolio-Bereich . Margin (50px, Auto); max Breite (960px); Breite: 100%; .portfolio-list padding-left: 0;  .portfolio-item .margin-bottom (30px); Höhe (320px); Padding (0, 15px); Schwimmer: links; Typ des Listentyps: keine; Breite: 33.33333333333333%;  .portfolio-content text-align: center;  .portfolio-cover width: 100%;  .portfolio-image border: 8px fest #fff; Max-Breite: 100%;  .portfolio-title .font-size (14px); Farbe: dunkler (@ color-title, 10%); Text-Transformation: Großschreibung; vertikal ausrichten: Mitte; Breite: 100%;  .portfolio-fields .font-size (12px); Farbe: dunkler (@ bg-body, 30%); .field-list padding: 0;  .field-item Anzeige: Inline-Block; &: after content: ',';  &: last-child: after content: "; 

Viele der oben genannten Stile sind dekorativ. Hier einige wichtige Punkte, die es zu beachten gilt:

Zuerst setzen wir die .Portfolio-Bereich Breite auf 100%, aber die maximale Breite bleibt bei 960px. Dadurch kann sich die Breite in kleinerer Ansichtsfenstergröße elegant anpassen. Wie Sie oben sehen können, haben wir auch das festgelegt .Portfolio-Element Breite auf 33.33333333333333%. Dies liegt daran, dass in jeder Zeile drei Elemente angezeigt werden. Das 33,33333333333333% wird aus der Division von 100% durch 3 abgeleitet.

Das .Portfolio-Abdeckung width ist auf 100% gesetzt, daher wird die Breite des übergeordneten Elements ausgefüllt. Das .Portfolio-Bild wird mit gesetzt Max-Breite: 100% Das Bild wird also unabhängig von der Größe nicht die übergeordnete Breite überschreiten. Alle diese Breiteneinstellungen helfen uns dabei, unsere Website flüssiger zu machen.

Nun sollte der Portfolio-Abschnitt so aussehen.

Die Fußzeile gestalten

Als Nächstes fügen wir die Stile für die Fußzeile hinzu. Die Fußzeile ist schlicht und einfach. Es besteht nur aus "Powered by" Text und einem Behance-Symbol aus Foundation Icon Fonts. Nachfolgend finden Sie alle Stilregeln für die Fußzeile.

.Portfolio-Fußzeile .margin (30px, auto); max Breite (960px); Text ausrichten: Mitte; Breite: 100%; .power-by .font-size (12px); Farbe: dunkler (@ bg-body, 30%); Text-Transformation: Großbuchstaben;  .power-logo .breite (36px); Höhe (36px); Farbe: # 1769ff; Anzeige: Inline-Block; Marge: 0 auto; Überlauf versteckt; Position: relativ; Textdekoration: keine; Text Gedankenstrich: 100%; Leerraum: Nowrap; &: vor Zeilenhöhe (38px); .font-size (36px); Anzeige: Inline-Block; Höhe: 100%; links: 0; Position: absolut; Text-Gedankenstrich: 0; oben: 0; Breite: 100%;  

Ähnlich wie beim Portfolio-Abschnitt stellen wir die Breite der Fußzeile auf 100% ein und richten sie mit der Mitte des Browserfensters aus Marge: 0 auto;. Wir richten auch den gesamten Inhalt an der Mitte aus, damit er ordentlich aussieht. Wir verstecken dann den Text im Inneren .Power-Logo Verwenden Sie die Kellum-Methode und zeigen Sie nur das Behance-Logo mit der Markenfarbe Blau an # 1769ff.

Hinweis: Wenn Sie einen Blick darauf werfen möchten, haben Sie eine ganze Reihe von Entwicklern zu ihren Branding-Richtlinien.

Die Fußzeile sollte jetzt ziemlich vollständig aussehen.

Die Website responsiv machen

Wir haben ein fließendes Layout, aber jetzt werden wir unsere Webseite ansprechbar machen. Glücklicherweise ist unsere Website nur eine einzige Seite mit einem sehr einfachen Layout. Daher ist kein langer Code erforderlich, um reaktionsfähig zu sein. Zunächst fügen wir das (entscheidende) Meta-Ansichtsfenster in das Fenster ein Kopf Etikett.

 

Als Nächstes fügen wir wie folgt einige Medienabfragen hinzu.

@media only screen und (min-width: 768px) und (max-width: 959px) .portfolio-area .portfolio-item width: 50%;  @media only screen und (max-width: 767px) .portfolio-area .portfolio-item height: auto; Breite: 100%;  

Bei diesen Medienabfragen werden zwei Elemente in einer Reihe zwischen 959px und 768px Breite des Ansichtsfensters und ein Element angezeigt, wenn die Breite des Ansichtsfensters 767px und weniger beträgt.

Unsere Portfolio-Website in verschiedenen Darstellungsgrößen

Nächstes Mal…

Nachdem wir die Ästhetik unserer Seite gestaltet haben, müssen Sie nur noch etwas Flair hinzufügen. Im nächsten und letzten Teil dieser Serie können Besucher auf jedes Miniaturbild klicken und eine größere Version anzeigen. Außerdem werden einige CSS3-Animationen hinzugefügt, um das Erlebnis zu verbessern.