Styling Vår Behance Portfolio Webbplats med mindre

Under den föregående delen av denna serie lärde vi oss om Behance API, med hjälp av det för att fånga en användares portföljstycken och visa dem på en webbsida. I denna del kommer vi att utforma webbsidan och presentera portföljstyckena på ett lämpligt attraktivt sätt. 

Verktyg vi ska använda

För att komma igång, kommer vi att förbereda vår verktygslåda:

Normalisera

Vi kommer att använda Normalisera för att göra grundelementelementen mer konsekventa över olika webbläsare och minimera risken för oväntade resultat.

MINDRE Mixins Bibliotek

Vi kommer också att använda MINDRE för att utforma vår hemsida. Vilken preprocessor du föredrar, är det definitivt rekommenderat att använda dem i ditt arbetsflöde. Jag är en stor fan av, istället för att tråla den önskade färgen i färgplockaren från en separat applikation, helt enkelt med hjälp av LÄSER kontrollfunktioner som t.ex. lätta() och mörkna() för att ge oss en rad färgvarianter.

För att hjälpa oss vidare, använder vi LESSHat för att hjälpa oss att skriva mindre kod med Mixins samling. Vi kommer också att använda Remixins utvecklade av Christopher Ramírez. Remixins är en samling Mixins att konvertera px in i rem enheter i. Samlingen innehåller Mixins för att specificera textstorlek, marginal, stoppning, bredd och höjd, och CSS position (vänster, höger, botten, och topp).

Dessutom behöver vi också ett verktyg för att kompilera LESS i vanlig CSS. I den här handledningen använder vi en app som heter Koala, som finns tillgänglig i Windows, OSX och Ubuntu. Du kan självklart använda vilken kompilator du föredrar, men med lycka till kommer du att kunna följa denna handledning oberoende av vilken plattform du använder.

För mer om MINDER, hänvisar du till dessa handledning:

  • Praktiska tips för att använda mindre
  • Komma till mindre: det programmerbara formatbladet

Google-teckensnitt

Standard systemfonter som Arial gör det inte för mig idag. Så i den här handledningen använder jag Google Fonts istället. Jag har valt Cantata One för rubriken och Open Sans för standardtexten. Det här är en personlig preferens, du kan utesluta Google Fonts eller använda alternativ om du vill.

Foundation Icon Fonts

Vi kommer också att använda typsnitt ikoner för lite dekoration på vår hemsida. Dessa dagar har vi massor av alternativ för typsnitt ikoner. Under min sökning var jag dock ganska överraskad att endast några av dessa teckensnitt innehåller Behance-ikonen i sin samling. Under alla omständigheter kommer vi att använda Foundation Icon Fonts 3, eftersom den innehåller Behance-ikonen och även tillgänglig via en CDN.

Ställa in våra tillgångar och verktyg

Låt oss skapa några nya mappar som heter mindre och css (som kommer att vara utmatningsmappen för den MINDERA filen). Skapa en ny fil med namnet style.less och ta Remixins och LESShat. Sätt dessa tre LESS stilark i mindre mapp. I detta skede bör listan över filer och mappar i vår projektkatalog se ut så här:

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

Lägg sedan till Normalisera, grundkonfigurationsfonterna och vårt typsnitt i Google Font i huvud tagg tillsammans med style.css, som kommer att vara utdatafilen av style.less.

      

Också öppna Koala app (eller vilken form av sammanställning du föredrar) och lägg till vår projektkatalog till den.

Projektkatalogen i Koala

 Lägga till ikonens teckensnitt

Innan vi skriver några stilar, låt oss lägga till några ikoner på vår hemsida. Först lägger vi till kartpositionsmarkeringen bredvid användarens platselement med fi-markör klass. Lägg till den här klassen bredvid profil-location klass som så:

... 
user.city, user.country
...

Detta lägger till en :innan pseudoelement till div, injicera markörsikonen in genom våra stiftelsens ikoner. Därefter lägger vi till Behance-logotypen i sidfoten med fi-social-Behance klass.

... 

Behance

...

Ställa in mixins och variabler

Låt oss öppna vår style.less och importera både lesshat.less och remixins.less med hjälp av  (referens) markera.

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

De (referens) märket introducerades i MINDER 1.5. Det betyder att MINDRE kommer att använda filen endast som referens, det kommer inte att kompilera och skriva ut innehållet i filen. Det är en mycket kraftfull funktion som minimerar dubbla och onödiga stilar.

Inside style.less lägger vi till följande variabler som lagrar färgpalett och fontfamilj på vår hemsida.

@ bg-body: #fafafa; @ bg-header: # 303746; @ färgbas: # 353537; @ färgnamn: # e0e0e0; @ färgtitel: # 6b919f; @ font-body: "Open Sans", Arial, sans-serif; @ font-namn: 'Cantata One', Georgia, Times, serif; 

Att placera dessa variabler på ett ställe fungerar som en typ av stilguide, men det hjälper oss också att behålla våra stilar på ett bekvämare sätt. Till exempel, om det finns något på webbplatsen som vi vill ändra, kan vi helt enkelt ändra värdet inom dessa variabler. Det är ett mycket säkrare sätt att ändra stilar, istället för att utföra "Sök och ersätt".

Börjar på stil

Grundläggande elementstilar

Trots att vi har lagt till Normalisera som har standardiserat våra elementstilar, har vi fortfarande några stilar att tweak för att följa vårt specifika behov. Till att börja med ändrar vi boxningsstorleken och ställer in alla elementens (inklusive pseudo-elementen) rutans storlek till border-box. Detta kommer att ge våra dimensioner en mycket mer kontrollerbar grund att arbeta från. 

Vi kan tillämpa detta med .box-dimensionering Mixins från LESSHat-biblioteket, enligt följande:

*, *: före, *: efter .box-dimensionering (border-box);  

Därefter kommer vi att ställa in html typsnittstorlek till 62,5%, vilket är ett sätt att göra relativa enheter mer hanterbara.

html font-size: 62.5%;  

62,5% här mäts mot webbläsarens standard på 1em vilket är 16px; så 62,5% av 16px är lika med 10. Genom att göra det kommer vi enkelt att kunna räkna ut konverteringen av rem i px genom att multiplicera den med 10. 1.2rem, till exempel kommer att vara lika med 12px och så vidare. Förutom detta, om vi tittar på remixins.less source, hittar vi basstorleken i @ Base-font-size-px variabeln är inställd på 10. 

Du kan hänvisa dessa artiklar till vidare på CSS relativ enhet:

  • Ta "Erm ..." Ut av Ems av Ian Yates
  • Tar Ems ännu längre av Ian Yates

Vi använder en figur element för att innehålla portföljens bildomslag. Men vårt figur element har ärft marginalvärden från Normalisera vilket orsakar oavsiktligt vitt utrymme mellan portföljbilderna. Så här tar vi bort marginalen från figur element.

figur margin: 0; / * skriv över Normalize.css standardstil * / 

Clearfix Hack

Att använda ett clearfix-hack är en populär metod som ett användningsområde för vissa layoutproblem som orsakas av flytande element som inte klarar av att rensa sina barnelement. Så här lägger vi till Clearfix-tipset av Nicolas Gallagher som vi har blivit till MINDRE.

.clearfix * zoom: 1; &: före, &: efter innehåll: ""; display: bord;  &: efter clear: both;  

Om du tittar på vår HTML-struktur har vi lagt till clearfix klass till vissa element.

Kroppsstilarna

För kropp, Vi ställer in de teckensnittstyp som gäller hela hela sidan. Dessa stilar inkluderar teckensnittstorlek, teckensnittsfärg, typsnittsvikt, teckensnittsfamilj och bakgrundsfärgen. Här kommer vi att använda .textstorlek() mixin från Remixins bibliotek för att skapa teckenstorleken. Alla Mixins som ingår i Remixins bibliotek genererar a px unit fallback, användbart för webbläsare som inte stöder rem enhet.

kropp .font-size (16px); bakgrundsfärg: @ bg-body; färg: @ färgbas; font-family: @ font-base; typsnitt: 300;  

Efter att ha sparat filen kommer Koala automatiskt att kompilera utmatningen. Och ovanstående kod ska se ut så här i vanlig CSS.

kropp font-size: 16px; fontstorlek: 1.6rem; bakgrundsfärg: #fafafa; färg: # 353537; font-family: "Open Sans", Arial, sans-serif; typsnitt: 300;  

Rubrikerna

Därefter lägger vi till stilar för webbplatsens rubrik, enligt följande.

.portföljrubrik .padding (50px, 0); bakgrundsfärg: @ bg-header; text-align: center; .profile-avatar img .size (80px); gränsen: 50%;  .profilnamn .font-size (24px); .margin-botten (10px); färg: @ färgnamn; font-family: @ font-name; font-vikt: 400;  .profile-fält .max-bredd (320px); .font-storlek (14px); färg: ljusare (@ bg-header, 50%); marginal-vänster: auto; marginal-höger: auto; .field-list padding: 0;  .field-item display: inline-block; &: efter innehåll: ',';  &: sista barnet: efter innehåll: "; .profile-plats .font-size (14px); färg: ljusare (@ bg-header, 30%); &: före .margin-right (10px); .font-size (18px); 

Det här är en hel del syntax, så låt oss bryta ner det och undersöka vad det gör. För det första har vi lagt till bakgrundsfärg i rubriken med den färg som lagras i vår @ Bg-header variabel. Vi använder .stoppning() Mixins från Remixins för att lägga vaddering på toppen och undersidan av rubriken, vilket ger mer vertikalt vitutrymme. Vi har också lagt till text-align: center så vårt innehåll ser mer ut i ordning.

.portföljrubrik .padding (50px, 0); bakgrundsfärg: @ bg-header; text-align: center; ... 

Vi har ställt in användarens avatarbildstorlek med .storlek() Mixins och gjorde cirkulär genom att ställa gränsen till 50%. Du kan se att dessa stilar förklaras i .profil-avatar img.

.profil-avatar img .size (80px); gränsen: 50%;  

Nedan följer reglerna för användarens namn. Här ställer vi in ​​teckensnittstorleken med en .textstorlek() blanda i. Vi har implementerat @ Färg-namn variabel för teckensfärgen och passerade teckensnittsfamiljen med @typsnittsfamilj variabel. Och till sist har vi lagt till font-vikt: 400; för att göra teckensnittet ser djupare ut än resten.

.profilnamn .font-size (24px); .margin-botten (10px); färg: @ färgnamn; font-family: @ font-name; font-vikt: 400;  

Därefter kommer vi att titta på reglerna för området användar kreativa fält, som vi riktar in mot .profilfälten. I Behance kan du lägga till så många färdigheter eller fältspecialiteter som du önskar. Det innebär att varje användare kan ha korta eller långa färdighetsbeskrivningar. Jag har därför bestämt mig för att ställa in bredden med a maximal bredd. Vi ställer in teckensnittsfärgen för 50% tändare från rubriken Bakgrund med lätta (@ bg-header, 50%).

Vidare separeras varje fältobjekt med ett komma som vi har levererat genom ett :efter pseudo-elementet. Logiskt sett måste det sista objektet inte ha ett komma, så vi har valt det sista objektet med :sista barnet och ställa in innehåll egendom ska vara tomt innehåll:".

.profilfält .max-bredd (320px); .font-storlek (14px); färg: ljusare (@ bg-header, 50%); marginal-vänster: auto; marginal-höger: auto; .field-list padding: 0;  .field-item display: inline-block; &: efter innehåll: ',';  &: sista barnet: efter innehåll: "; 

Följande är stilreglerna för styling av användarplatsen. Här ställer vi färgen något ljusare än bakgrundsfärgen, 30% för att vara exakt. Och vi har också något utvidgat klyftan mellan texten och markörsikonen från Foundation Icon Fonts genom att lägga till margin-höger till :innan pseudo-elementet.

.profil-plats .font-size (14px); färg: ljusare (@ bg-header, 30%); &: före .margin-right (10px); .font-storlek (18px);  

Efter att ha lagt till dessa stilar borde rubriken nu se ut så här:

Styling av Portfolio Section

Följande kod innehåller alla stilar för vår portfölj.

.portföljområde .margin (50px, auto); .max-bredd (960 x); bredd: 100%; .portfolio-list padding-left: 0;  .portfolio-objekt .margin-bottom (30px); .height (320 x); .padding (0, 15px); flyta till vänster; lista-stil-typ: none; bredd: 33,33333333333333%;  .portfolio-innehåll text-align: center;  .portfolio-cover width: 100%;  .portfolio-image border: 8px solid #fff; max bredd: 100%;  .portfolio-title .font-size (14px); färg: mörkare (@ färgtitel, 10%); text-transform: kapitalisera; vertikaljustering: mitt; bredd: 100%;  .portfolio-fält .font-size (12px); färg: mörkare (@ bg-kropp, 30%); .field-list padding: 0;  .field-item display: inline-block; &: efter innehåll: ',';  &: sista barnet: efter innehåll: "; 

Många av ovanstående stilar är dekorativa. Men här är några viktiga saker att notera:

Först ställer vi in .portfölj-område bredd till 100%, men bevara maximal bredd vid 960px. Detta gör att bredden kan anpassas graciöst i mindre visningsstorlek. Också, som du kan se ovan, har vi ställt in .portfölj-objektet bredd till 33,33333333333333%. Detta beror på att vi kommer att visa tre objekt på varje rad. De 33,33333333333333% är härledd från uppdelningen av 100% med 3.

De .portfölj-cover bredden är inställd på 100%, så fyller den sin förälders bredd. De .portfölj-image är inställd med max-bredd: 100% så bilden kommer inte att överstiga föräldern bredden oavsett storlek. Alla dessa breddinställningar hjälper oss att göra vår hemsida flytande.

Nu bör portföljavsnittet se ut så här.

Styling Footer

Därefter lägger vi till stilar för Footer. Footer är vanlig och enkel; den består bara av "Powered by" -text och en Behance-ikon från Foundation Icon Fonts. Nedan följer alla stilregler för Footer.

.portföljen .margin (30px, auto); .max-bredd (960 x); text-align: center; bredd: 100%; .Power-by .font-size (12px); färg: mörkare (@ bg-kropp, 30%); text-transform: stor bokstav;  .power-logo .width (36px); .height (36px); färg: # 1769ff; display: inline-block; marginal: 0 auto; överflöde: gömd; position: relativ; text-dekoration: ingen; textindelning: 100%; white-space: nowrap; &: före .line-height (38px); .font-storlek (36px); display: inline-block; höjd: 100%; vänster: 0; position: absolut; textindelning: 0; topp: 0; bredd: 100%;  

På samma sätt som portföljsektionen ställer vi bredden på foten till 100% och justerar den till mitten av webbläsarens fönster med marginal: 0 auto;. Vi anpassar också allt innehåll till mitten så att det ser ordentligt ut. Vi gömmer sedan texten inuti .power-logo Använd Kellummetoden och visa endast Behance-logotypen med sin varumärkesfärg, blå # 1769ff.

Notera: Behance har en hel utvecklare sektion om sina Branding Guidelines om du vill ta en titt.

Footer ska nu se ganska komplett, som så.

Göra webbplatsen Responsive

Vi har en fluid layout, men nu ska vi göra vår hemsida lyhörd. Lyckligtvis är vår hemsida bara en enda webbplats med en mycket enkel layout. Så det kommer inte att behöva någon lång kod för att göra det lyhört. Till att börja med lägger vi till (avgörande) metavisningsporten i huvud märka.

 

Nästa lägger vi till några mediefrågor, enligt följande.

@media-skärm och (minbredd: 768px) och (maxbredd: 959px) .portfolio-område .portfolio-objekt bredd: 50%;  @media bara skärm och (max bredd: 767px) .portfolio-område .portfolio-item height: auto; bredd: 100%;  

Dessa mediefrågor visar två objekt i rad mellan 959px och 768px visningsbredd och ett objekt när visningsbredd är 767px och lägre.

Vår portföljwebbplats i olika visningsstorlekar

Nästa gång…

Efter att ha stylat estetiken på vår sida är allt som finns kvar att lägga till lite känsla. I nästa och sista delen av denna serie tillåter vi besökare att klicka på varje miniatyrbild och se en större version, plus vi lägger till några CSS3-animeringar för att förbättra upplevelsen.