Modelele SVG oferă o abordare mai flexibilă pentru a repeta o imagine de fundal pe o pagină web decât placa CSS. Să ne uităm de ce este și cum să le folosiți.
Acest tutorial este disponibil atât în format video cât și în formă textuală - aici este o descriere a ceea ce veți învăța:
Să începem prin a verifica tigla CSS - metoda mai tradițională de repetare a unei imagini pentru fundal. Ideea este simplă: transmitem o adresă URL către fundal
proprietatea elementului pe care dorim să-l acoperim. URL-ul indică un fișier imagine, în acest caz un fișier PNG. Implicit imaginea noastră se va repeta de-a lungul ambelor axe.
corp background: url ("cuadros.png");
Iată cum arată:
Să aruncăm o privire asupra tiparelor SVG - ceva care, întâi întâlnit, este puțin mai greu de înțeles. Vom începe prin codarea manuală a unui exemplu.
Pentru o reîmprospătare a modului de a codifica toate părțile diferite ale unui SVG, aceste două tutoriale ale începătorilor de Kezz Bracey sunt foarte utile:
Pentru a începe, vom crea un element svg, oferindu-i o înălțime și o lățime de 100% pentru a ocupa orice container pe care îl plasăm.
Pentru a crea un model
trebuie să o plasăm în defs
(definiții) din SVG, după cum urmează:
Acum, să adăugăm câteva atribute elementului respectiv. Îi vom da un ID, astfel încât să îl putem referi mai târziu, apoi vom specifica începerea coordonatelor X și Y, valorile lățimii și înălțimii și vom afirma că patternUnits
sunteți userSpaceOnUse
(aceasta definește sistemul de coordonate, despre care puteți citi mai multe despre MDN):
După configurarea acestor parametri, trebuie să definim acum imaginea care se va repeta. Să creăm un cerc de bază:
Nici un model nu va fi încă vizibil, dar asta pentru că l-am definit fără a fi de fapt punerea în aplicare la orice. Să o schimbăm prin aplicarea acesteia la a
în afara noastră
.
În mod crucial, veți vedea completati
(care ar putea fi, de obicei, o valoare de culoare sau un nume) indică o adresă URL care conține codul noului model definit: completați = "url (# polka-puncte)"
.
Check out demo-ul de mai jos:
Pentru un exemplu mai complex, vom lăsa în urmă codarea manuală și vom genera un model utilizând un instrument terț. Vom folosi heropatterns.com, un site care vă permite să selectați modele SVG predefinite, să modificați culorile și atributele acestora, apoi să copiați codul generat.
Voi folosi modelul de jigsaw:
În loc să copiați CSS generat în întregime, voi copia doar d = ""
parametru, care este traseul real tras.
Codul SVG pe care l-am creat va fi aproape exact la fel ca exemplul nostru precedent. ID-ul în cadrul
vor fi diferite, desigur, și îi vom da dimensiuni ușor diferite în funcție de ceea ce se utilizează în heropatterns.
Deci unde, în ultimul nostru exemplu, am definit a
, de data aceasta definim a
. Îi dăm o culoare de umplere, apoi ne lipim pe calea pe care am copiat-o acum un moment. Aceasta este ceea ce ne dă:
😀 Programe tigle CSS:
😡 Conturile CSS contra:
😀 Programe SVG:
😡 Modelul SVG contra:
Uitați-vă la aceste patru resurse, care pot fi foarte utile pentru generarea codului real și idei!
SVG este o tehnologie larg acceptată, chiar și în browser mai vechi, cum ar fi IE9. Unele funcții ale SVG nu beneficiază totuși de o susținere într-o astfel de măsură și nu există prea multe informații disponibile pentru specificul
proprietăți (cum ar fi patternUnits
, patternContentUnits
, patternTransform
etc). Există câteva linkuri utile de mai jos, inclusiv documentația de la Mozilla - vă vor da o idee despre ce informații sunt disponibile în prezent.
Din propriile teste pot să vă spun că browserele moderne de pe Windows și Mac OS au avut de-a face cu modelele SVG foarte bine. Chiar și până la IE11.
Să rezumă punctele cheie ale acestui tutorial.
defs
, asigurați-vă că are un ID, apoi trimiteți ID-ul în forma dorită.