Susy este un set puternic de mixe Sass pentru construirea de planuri bazate pe grilă.
Ce e atât de grozav cu Susy? Vă vom arăta elementele de bază ale colaborării cu Susy în acest tutorial, dar aici este o listă de profesioniști care trebuie luați în considerare:
Acești trei simpli profesioniști sunt mai mult decât suficienți pentru a da Susy o privire. Să începem!
În primul rând, va trebui să fiți suficient de familiari cu Sass pentru a scrie și ao compila. În momentul acestei scrieri, Susy implementează câteva caracteristici Sass care nu sunt acceptate în prezent de LibSass (compilatorul Sass bazat pe C), astfel încât va trebui să utilizați versiunea Ruby de la Sass. Începeți prin a instala Sass și aflați cum să utilizați ceas
care va fi esențială pentru lucrul cu Sass în general, precum și cu Susy.
Apoi, va trebui să-l aduci pe Susy pe calculatorul tău. Deoarece singura dependență a lui Susy este chiar Sass, poți descărca fișierul zip al proiectului de la GitHub și copia conținutul folderului Sass în proiectul tău.
Apoi, va trebui să importați Susy în fișierul dvs. Sass.
@import "susy";
Aceasta presupune că sunteți într-un director cu conținutul folderului Sass.
Susy este fundamental un set de amestecuri, care sunt ca și funcții în Sass. Aceste mixuri sunt numite în interiorul codului dvs. Sass și când compilatorul Sass rulează, acesta va analiza definițiile mixin din fișierele Susy și va determina ieșirea corespunzătoare.
Cel mai important mixin din Susy este deschidere
mixin, care arată astfel:
.conținut @ include span (20%);
deschidere
mixin se bazează, de asemenea, pe recipient
mixin, care stabilește ceea ce Susy numește un "context de aspect".
.containerul @ include container (1180px);
Susy vă permite, de asemenea, să creați deschideri bazate pe un număr prestabilit de coloane într-o rețea:
.trimestrul @ include span (4 din 12);
Puterea lui Susy depășește cu mult grila medie, permițând configurații mai mici decât cele normale. Să începem cu un exemplu simplu: o dispunere de 9 coloane.
.al nouălea @ include span (1 din 9);
Susy vă permite să configurați configurația prin $ Susy
variabil. Crearea unei hărți Sass vă permite să determinați o serie de preferințe privind modul în care Susy funcționează pentru a vă stabili deschiderile. Susy implementează a schemă
mixin care emite o hartă de configurație. Iată setările implicite, luate direct din documentația lui Susy.
$ susy: (debit: ltr, matematică: fluid, ieșire: flotor, poziția jgheabului: după, container: autocolant, poziție container: centru, coloane: 4, jgheaburi: .25; (imagine: ascunde, culoare: rgba (# 66f, .25), ieșire: fundal, comutare: dreapta sus), utilizare-personalizat: (imagine-fundal : adevărat, opțiuni de fundal: false, dimensionare în cutie: adevărat, clarfix: false, rem: true,));
Puteți să înlocuiți orice setare specifică adăugând-o la propria dvs. $ Susy
Hartă:
$ susy: (coloane: 16, ultimul flux: de la)
Opțiunile schimbate în mod obișnuit sunt numărul de coloane, lățimea jgheabului și producție
opțiune. Fiecare dintre aceste opțiuni de configurare face ceva diferit.
Din motive de acest tutorial, nu vom trece prin toate opțiunile de configurare (documentația lui Susy face o treabă excelentă de a le explica). În schimb, să prezentăm câteva exemple practice despre cum puteți folosi Susy.
Aici, putem vedea o utilizare de bază a amestecurilor span și containere:
Notă: pentru a aprecia coloanele la lățime maximă, aruncați o privire la versiunea completă a ecranului.
Există câteva lucruri de observat cu acest exemplu. Am creat un exemplu controversat de tablou de bord. Am inclus, de asemenea, un pic de JavaScript care aduce imagini false utilizatorilor din API-ul uifaces.com.
Piesele specifice lui Susy sunt coloanele. În acest exemplu, am creat un aspect receptiv utilizând @ include span ()
sintaxă. De asemenea, folosim capabilitățile de cuibărire ale SCSS în câteva locuri. Rețineți că Susy se potrivește perfect cu sintaxa obișnuită a interogării media. Am creat un container din .statistici
folosind secțiunea @ includeți containerul;
.
De asemenea, trebuie remarcat faptul că există coloane imbricate în acest exemplu particular; .Avatar
elementele sunt imbricate într-o altă coloană Susy, iar acest lucru funcționează perfect, deoarece Susy utilizează, în mod implicit, lățimi de lichid.
Apoi, putem vedea o utilizare a stenografiei lui Susy pentru aspectul cu o grilă care are coloane mai mari în mijloc decât pe exterior.
În acest exemplu, folosim câteva opțiuni diferite care ar trebui să arate noi pentru dvs. Mai întâi, vom crea marcaje folosind Haml. Haml este un înlocuitor de markup sensibil la spațiul alb, pentru HTML construit pe Ruby. Gândiți-vă că este un pic ca un preprocesor pentru HTML.
Să ne uităm la ceea ce creează exemplul nostru.
.caramida-list
Aceasta creează o Această linie indentată repetă tot ce este îmbrăcat în interiorul aceleiași indenții de 30 de ori. Acest lucru înseamnă că orice va fi afișat va fi în interiorul divului pe care l-am creat mai sus cu Vedem asta în interiorul nostru O altă parte importantă a acestor linii este Grila Susy este unică în acest exemplu; configuram o variabilă de rețea cu linia: Această variabilă va fi transmisă lui Susy în cadrul nostru Apoi utilizăm această rețea în întregul exemplu, plasându-ne Iată același exemplu, cu un alt aspect asimetric. După cum puteți vedea, rețelele neconvenționale sunt directe pentru a realiza, iar Susy face controlul puternic al rețelei o sarcină plăcută. Susy oferă o modalitate mai flexibilă și mai puțin avizată de a vă crea propriile planuri fără a vă forța să adoptați un set predeterminat de CSS. Datorită acestei flexibilități, Susy poate fi rapid învățată și adusă într-un proiect fără a trebui să se angajeze pe deplin să o folosească în fiecare declarație CSS pe care o creați. Indiferent dacă ați determina dacă Susy este potrivit pentru dvs. sau nu, ca dezvoltator de front-end, trebuie să fiți la curent cu toate instrumentele de procesare prealabilă disponibile. Ele devin un set de instrumente-cheie pentru dezvoltatorii moderni.caramida-list
.- 30 de ori nu |
.caramida-list
. | I |
porțiunea trece în curent index, care este numărul de bucla, începând de la 0. De exemplu, la a cincea oară prin bucla, eu
ar fi egal cu 4
. .col% img src: "http://hhhhold.com/jpeg/700?v=#i"
de 30 de ori
buclă. .col
creează un div
cu clasă
de col
. % img ...
creează un element, iar atributele din acoladele curbate sunt trecute în acea imagine. Folosim hhhhold.com pentru imaginile noastre cu substituent. Sintaxa este sintaxa Ruby hash, care este în multe privințe foarte asemănătoare cu JSON.
#
, care vă permite să imprimați eu
variabila index (aceasta se numește interpolare, dacă doriți să aflați mai multe, Hugo Giraudel explică tot ce trebuie să știți). Utilizăm această variabilă în URL ca parametru, astfel încât imaginile pe care le încărcăm să nu fie la fel.$ grilă: (1 2 5 5 2 1);
deschidere
mixin sună și citește creați o rețea cu șase coloane; prima coloană trebuie să aibă o lățime relativă de 1, a doua coloană cu lățimea relativă de 2, a treia coloană cu lățimea relativă de 5, etc..col
divs la pozițiile 1, 3 și 5 ale coloanei de pornire și care se întind pe 2 coloane utilizând nth-copil
Regula CSS. Dacă am fi modificat aceeași rețea pentru a avea fiecare coloană cu aceeași lățime a coloanei, ar arăta astfel.Concluzie