Hemsida » Kodning » Sass Tutorial Bygga ett online-vCard med Sass & Compass

    Sass Tutorial Bygga ett online-vCard med Sass & Compass

    Idag ska vi fortsätta vår diskussion om Sass och det här blir den sista delen av vår Sass-serie. Den här gången, snarare än ett teoretiskt tillvägagångssätt, kommer det att bli lite mer praktiskt. Vi kommer att skapa ett online-vCard med Sass tillsammans med Compass.

    Tanken är att vCard bör enkelt justeras, för färg och storlek. I processen kommer vi att använda några Sass och Compass-funktioner som Variabler, Mixins, Operations, Selectors Arv, Nested Rules och Kompasshjälpare. Om du har missat våra tidigare inlägg från den här serien rekommenderar vi att du tar en titt på dem först innan du fortsätter.

    Planering och Wireframing

    När du arbetar med Sass och Compass, planering är väsentlig. Vi behöver vanligtvis ha den stora bilden om hur vårt slutliga resultat (t ex sida eller hemsida) kommer att bli. Det kommer att vara till hjälp att bläddra bland webbplatser som Behance eller Dribbble för idéer. Vi kan sedan utarbeta idéerna på papper eller konstruera det i en wireframe, som det här exemplet nedan.

    Som du kan se från bilden ovan innehåller vårt vCard Kontaktinformation om 'John' - en bildprofil, lite information om John, till exempel hans namn, e-postadress, telefonnummer och en kort beskrivning av vem han är eller vad han gör. Det kommer att bli vår "bio" sektion.

    Nedan finns hans sociala identiteter i form av sociala knappar. Detta blir vår "sociala" sektion.

    Förberedande tillgångar

    Innan vi börjar kodning, här är några viktiga saker att göra sig redo. Jag insamlar att du nu ska ha Sass och Compass installerad i din maskin.

    (Om du inte är säker på om du har installerat dem, kan du köra det här kommandot sass -v eller kompass -v genom Command Prompt eller Terminal eller kan du alltid använda program som Scout App om du föredrar att arbeta med en GUI.)

    Vi behöver också några tillgångar som typsnitt ikoner och sociala medier ikoner, som du kan få från platser som ModernPictograms.

    Slutligen, eftersom vi använder Command Prompt / Terminal för denna handledning måste vi navigera till vår katalog och köra Compass-projekt med dessa två kommandon: kompass init och kompassklocka.

    HTML Markup

    Nedan är HTML-märkningen av vårt vCard, det är ganska enkelt. Alla sektioner är inslagna i en logisk HTML5-tagg

    .

     
    • Thoriq Firdaus
    • [email protected]
    • (+62) 1.2345.678.9
    • Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse dolor neque, eleifend på pellentesque quis, är det bara att säga. Etiam et auctor arcu.

    Som du kan se ovan ingår de sociala identiteterna i "sociala"avsnittet är strukturerat inom listelement så att vi enkelt kan visa dem sida vid sida. Var och en av dem får klassnamn enligt denna konvention social facebook, social-twitter, social google och så vidare.

    Kompasskonfiguration

    Vi behöver konfigurera Kompass lite genom att inte kommentera några rader config.rb fil, enligt följande:

     # Du kan välja din föredragna utskriftsstil här (kan överskridas via kommandoraden): output_style =: expanded # För att aktivera relativa sökvägar till tillgångar via kompasshjälpsfunktioner. Uncomment: relative_assets = true # Om du vill inaktivera felsökningskommentarer som visar din markörs ursprungliga plats. Okommande: line_comments = false 

    Om du inte kan hitta config.rb filen har du förmodligen inte kört det här kommandot kompass init i din projektkatalog.

    Importera filer

    Eftersom vi ska använda kompass måste vi importera det med hjälp av;

     @ import "kompass"; 

    Och det är min personliga preferens att återställa standardstilar från webbläsarna så att utmatningen blir mer konsekvent. Kompass har i detta fall en återställningsmodul. Den här modulen är baserad på Eric Meyers CSS-återställning och kan importeras med;

     @import "kompass / återställning"; 

    Men jag föredrar att använda normalisera det tack och lov kommer också i Sass / Scss-format. Ladda ner filen här, spara den i sass arbetskatalog och importera den till vårt stilark.

     @import "normalisera"; 

    Rekommenderad läsning: Granskning av CSS Style Priority Level

    variabler

    Vi kommer säkert att ha några konstanta värden i stilarket, så vi lagrar dem i variabler och dessa två variabler nedan definierar basfärgen på vår vCard.

     $ bas: #fff; $ mörk: mörkare ($ bas, 10%); 

    Medan $ bredd Variabel nedan kommer att vara vår sidas bredd; Det kommer också att ligga till grund för att definiera andra elementstorlekar.

     $ bredd: 500px; $ space: $ width / 25; // = 20px 

    Och den $ utrymme variabel, som du kan se, blir standardavståndet eller kolumnstorleken i vårt vCard vilket i det här exemplet skulle vara 20px;

    Compass har också hjälpare att upptäcka bildstorlek och vi kommer att använda denna funktion på vår bildprofil enligt följande:

     $ img: bildbredd ("me.jpg") + (($ space / 4) * 2); 

    Den extra Tillägg av (($ space / 4) * 2) i koden ovan är att beräkna den totala bildbredden inklusive gränsen som ramar bilden. En ram har vanligen två sidor; topp och botten / vänster och höger, det är därför vi multiplicerar divisionsresultat av 2.

    Selector Arv

    Det finns tydligen några valörer i vårt stylesheet som kommer att ha samma styling regler. För att undvika repetition i vår kod måste vi ange dessa stilar först och arva dem med @förlänga Direktiv vid behov. Denna metod, i Sass, är känd som Selector Arv, en mycket användbar funktion som saknas i mindre.

     .float-left float: left;  .box-dimensionering @include box-size-dimensionering (border-box);  

    Styles

    När allt som behövs har installerats, är det dags att ställa in vårt vCard, med en bakgrundsfärg till vårt HTML-dokument.

     html höjd: 100%; bakgrundsfärg: $ base;  

    vCard

    Följande stilar definierar vCard-omslaget. Om du har arbetat med MINDER tidigare, kommer den här koden att vara bekant för dig och lätt att smälta.

     .vcard width: $ width; marginal: 50px auto; bakgrundsfärg: mörkare ($ bas, 5%); gränsen: 1px solid $ dark; @ include border-radius (3px); ul vaddering: 0; marginal: 0; li list-style: none;  

    Omslagets bredd ärverver värdet från $ bredd variabel. Bakgrundsfärgen är mörkare av 5% från basfärgen, medan gränsen färgar blir mörkare av 10%. Denna färgning uppnås med hjälp av Sass färgfunktioner.

    VCard kommer också att ha 3px radie av rundade hörn som uppnås med användning av Compass CSS3 Mixins; border-radius (3px).

    Bio-sektion

    Som vi har noterat tidigt i denna handledning kan vCard delas upp i två sektioner. Dessa nestade stilar nedan kommer att definiera den första sektionen som innehåller bildprofilen med några detaljer (namn, e-post och telefon).

     .bio border-bottom: 1px solid $ dark; vaddering: $ space; @extend .box-dimensionering; img @extend .float-left; display: block; gräns: ($ space / 4) solid #ffffff;  .detail @extend .float-left; @extend .box-dimensionering; färg: mörkare ($ bas, 50%); marginal: vänster: $ space; botten: $ space / 2;  bredd: $ bredd - (($ space * 3) + $ img); li &: före bredd: $ space; höjd: $ space; marginal-höger: $ space; font-family: "ModernPictogramsNormal";  & .name: före innehåll: "f";  & .email: före innehåll: "m";  & .phone: före innehåll: "N";  

    Det finns en sak från koden ovan som vi tycker att du måste göra ett meddelande. Bredden i .detalj väljaren specificeras med denna ekvation $ bredd - (($ space * 3) + $ img);.

    Denna ekvation används för att dynamiskt beräkna detaljens bredd genom att subtrahera bildprofilens bredd och mellanslag (vaddering och marginal) från vCards totala bredd.

    Social del

    Stilarna nedan är för den andra sektionen i vCard. Det är faktiskt ingen skillnad med vanlig CSS här, bara nu är de nestade och några värden definieras med variabler.

     .social bakgrundsfärg: $ mörk; bredd: 100%; vaddering: $ space; @extend .box-dimensionering; ul text-align: center; li display: inline-block; bredd: 32px; höjd: 32px; en text-decoration: none; display: inline-block; bredd: 100%; höjd: 100%; textindelning: 100%; white-space: nowrap; översvämning: gömd;  

    I det här avsnittet kommer vi att visa ikonerna för sociala medier med hjälp av bildsprite-tekniken, och Compass har en funktion för att göra det jobbet snabbare.

    Först och främst måste vi lägga våra ikoner i en särskild mapp - låt oss namnge mappen /social/, till exempel. Tillbaka i stilarket kopplar du samman dessa ikoner med följande @importera regel.

     @import "social / *. png"; 

    De social/ ovan hänvisar till mappen där vi lagrar ikonerna. Den här mappen ska vara näst i bildmappen. Nu, om vi tittar på i vår bildmapp, borde vi se en spritbild genererad med slumpmässiga tecken, som social sc805f18607.png. Vid det här tillfället händer ingenting fortfarande i fronten, tills vi använder stilerna med följande rad.

     @ inkludera alla-sociala-sprites; 

    Slutresultat

    Slutligen, efter allt det hårda arbetet kan vi nu se resultatet så här:

    Om vi ​​tror det 500px är för bred senare behöver vi bara ändra värdet i $ bredd variabel - till exempel, 350 pixlar - resten kommer “magiskt” justeras. Du kan också experimentera med färgvariabeln.

    • Visa demo
    • Hämta källa

    Slutsats

    I denna handledning har vi visat dig hur man bygger ett enkelt online-vCard med Sass och Compass; Detta är bara ett exempel. Sass och Kompass är verkligen kraftfulla, men ibland är det inte nödvändigt. Till exempel, när vi arbetar på en webbplats med några sidor och förmodligen bara behöver färre linjer av stilar, använder Sass och Compass anses för överdriven.

    Detta inlägg stänger vår Sass-serie och vi hoppas att du haft det. Om du har några frågor angående ämnet, tveka inte att lägga till det i kommentarfältet nedan.