Radijalni gradijent stvara se pomoću svojstva pozadine ili pozadinske slike s parametrom radijalnog gradijenta. U najjednostavnijem slučaju, za postavljanje radijalnog gradijenta potrebna su vam samo dva parametra: početna i završna boja. Prema zadanim postavkama početna točka nalazi se u središtu. Primjer 1 pokazuje kako stvoriti nešto što podsjeća na loptu koristeći radijalni gradijent i zaobljene kutove.
Primjer 1: Gradijent
Gradijent
Rezultat ovog primjera prikazan je na sl. 1. Imajte na umu da primjer radi ispravno u IE10 i Operi 12, rane verzije Ovi preglednici ne podržavaju radijalne gradijente i ne rade u Safariju 5.1, koji zahtijeva prefiks -webkit.
Riža. 2. Radijalni gradijent
Početna točka gradijenta može se postaviti bilo gdje u elementu, u tu svrhu prvo se specificira njegov položaj.
Položaj točke piše se slično vrijednostima svojstva pozadinskog položaja, koristeći ključne riječi ili dostupne mjerne jedinice kao što su pikseli ili postoci; Ispod su moguće kombinacije.
gore lijevo = lijevo gore = na 0% 0% (lijevo gornji kut);
na vrhu = na vrhu centar = na sredini vrh = na 50% 0% (gornji centar);
desno gore = gore desno = na 100% 0% (u gornjem desnom kutu);
lijevo = lijevo sredina = središte lijevo = 0% 50% (lijevo i središte);
u središtu = u središtu središte = na 50% 50% (centar) je zadana vrijednost;
desno = desno u sredini = u sredini desno = na 100% 50% (desno i sredina);
dolje lijevo = lijevo dolje = na 0% 100% (u donjem lijevom kutu);
na dnu = na dnu centar = na sredini dno = na 50% 100% (dolje u sredini);
dolje desno = desno dolje = na 100% 100% (u donjem desnom kutu).
Ako postavite početnu točku na primjer 1 na 40px 45px, a drugu boju učinite malo tamnijom (#0076a5), dobit ćete nešto realističniju loptu (slika 3).
Riža. 3. Promjena početne točke gradijenta
Dva su moguća oblika radijalnog gradijenta - krug i elipsa, koji se razlikuju po izgledu. Zadani je eliptični gradijent.
Razlika između kružnog i eliptičnog gradijenta za boje #f9e497 i #ffb60f prikazana je na slici. 4.
Za element čija je širina jednaka njegovoj visini, kao u primjeru s loptom, razlika između vrsta gradijenata neće biti primjetna.
Primjer 2 pokazuje kako stvoriti kružni gradijent sa zadanom početnom točkom. Kako bi se poboljšao kontrast između boja, koriste se tri vrijednosti boja umjesto dvije.
Primjer 2: Kružni gradijent
HTML5 CSS3 IE 9 IE 10 Cr Op Sa Fx
Gradijent
Ovaj element pomaže kada ste svjesni činjenice da nemate apsolutno pojma tko vam može pomoći i kako. U ovom trenutku sugeriramo da vam nitko ne može pomoći.
Obratite pozornost na sintaksu, ako želimo kombinirati oblik gradijenta s naznakom početne točke, tada ključna riječ krug dolazi na prvom mjestu, a zatim se pozicija odvaja razmakom. Rezultat ovog primjera prikazan je na sl. 5.
Riža. 5. Kružni gradijent
Uz vrstu gradijenta možete postaviti i njegovu veličinu, koja ovisi o korištenim ključnim riječima. Veličina se piše s razmakom iza vrste gradijenta (krug ili elipsa).
U tablici 1 navodi moguće vrijednosti veličine s njihovim opisom i rezultatom za bijelu i crnu boju. Šifra i vrsta navedeni su za kružne i eliptične gradijente.
Stol 1. Ključne riječi za promjenu veličine gradijenta
Značenje
Kodirati
Opis
Pogled
pozadina: radijalni gradijent (krug najbliže strane na 30px 20px, #fff, #000);
pozadina: radijalni gradijent (najbliža strana elipse na 30px 20px, #fff, #000);
Oblik gradijenta odgovara strani bloka koja mu je najbliža.
Oblik gradijenta izračunava se na temelju informacija o udaljenosti do udaljenog kuta bloka,
Za središnju početnu točku, čini se da se gradijenti podudaraju. Ali gradijenti će biti drugačiji ako postavite početnu točku u kutu. Primjer 3 koristi vrijednost koja određuje početnu točku u pikselima.
Primjer 3: Veličina gradijenta
HTML5 CSS3 IE 9 IE 10 Cr Op Sa Fx
Gradijent
Sadržaj
Rezultat ovog primjera prikazan je na sl. 6.
Riža. 6. Korištenje vrijednosti najbližeg kuta
Slično kao kod linearnog gradijenta, možete odrediti više boja, postaviti njihov položaj i napraviti oštre prijelaze između boja. Da biste to učinili, naveden je proizvoljan broj boja odvojen zarezima, a nakon vrijednosti boje, odvojene razmakom, nalazi se njezin položaj koji se može navesti u pikselima ili postocima. Ekstremne vrijednosti 0% i 100% ne moraju se pisati; one se automatski pretpostavljaju.
Oštri prijelazi nastaju kada se položaj jedne boje podudara s položajem druge, kao što je prikazano u primjeru 4. Razlika od jednog piksela napravljena je da malo izgladi prijelaz, inače ispada da su "ljestve" piksela, što ne izgleda baš lijepo.
Primjer 4. Nagli prijelazi
HTML5 CSS3 IE 9 IE 10 Cr Op Sa Fx
Gradijent
Rezultat ovog primjera prikazan je na sl. 7.
Riža. 7. Oštri prijelazi između različitih boja
Ako se linearni i radijalni gradijenti dopune svojstvom veličine pozadine, tada dobivamo veliki izbor ponavljajućih pozadinskih slika koje su napravljene bez korištenja slika.
CSS gradijent predstavlja prijelaze iz jedne boje u drugu.
Gradijenti se stvaraju pomoću funkcija linear-gradient() i radial-gradient().
Gradijent pozadine može se postaviti u svojstvima pozadine, pozadinske slike, obrubne slike i popisa stila slike.
Ako je smjer određen parom ključnih riječi, na primjer gore lijevo , tada će se početna točka gradijenta nalaziti u suprotnom smjeru, u ovom slučaju dolje desno.
Za neravnomjernu raspodjelu boja, početna pozicija svake boje naznačena je kroz zaustavne točke gradijenta, tzv. boja se zaustavlja. Prijelomne točke navedeni su u %, gdje je 0 % početna točka, 100 % krajnja točka, na primjer:
Div (visina: 200 px; pozadina: linearni gradijent (na vrh, #E4AF9D 20%, #E4E4D8 50%, #A19887 80%); )
Za jasnu raspodjelu pruga u boji, svaka sljedeća boja mora započeti od točke zaustavljanja prethodne boje:
Radijalni gradijent razlikuje se od linearnog po tome što boje dolaze iz jedne točke (središta gradijenta) i ravnomjerno se raspoređuju prema van, crtajući oblik kruga ili elipse.
Pozadina: radijalni gradijent (oblik gradijenta/veličina/središnji položaj, prva boja, druga boja itd.);
Oblik gradijenta definirano ključnim riječima krug ili elipsa. Ako oblik nije naveden, radijalni gradijent prema zadanim postavkama ima oblik elipse.
Div (visina: 200 piksela; pozadina: radijalni gradijent (bijela, #FFA9A1); )
Središnji položaj navedeno pomoću ključnih riječi korištenih u svojstvu pozadinske pozicije, nakon čega slijedi prefiks at. Ako središnji položaj nije naveden, koristi se zadana vrijednost u središtu.
Div (visina: 200 px; pozadina: radijalni gradijent (na vrhu, #FEFFFF, #A7CECC); )
Par vrijednosti, navedenih u jedinicama duljine %, em ili px, može kontrolirati veličinu eliptičnog gradijenta. Prva vrijednost određuje širinu elipse, druga - visinu.
Osim linearnih i radijalnih gradijenata, postoji ponavljanje gradijenata, koje je specificirano pomoću funkcija repeating-linear-gradient() i repeating-radial-gradient(). Pozadina ponavljajućih gradijenata izgleda neuredno, pa se preporučuje da sljedeću boju započnete tamo gdje je prethodna stala, stvarajući tako prugaste uzorke.
Div (visina: 200px; pozadina: ponavljajući-linearni-gradijent(45deg, #606dbc, #606dbc 10px, #465298 10px, #465298 20px); ) div (visina: 200px; pozadina: ponavljajući-radijalni-gradijent(krug, # B9ECFE, #B9ECFE 10px, #82DDFF 10px, #82DDFF 20px )
4. Gradijent između preglednika
Da biste pravilno prikazali gradijente u svim preglednicima, morate dodati unos za više preglednika.
CSS funkcija radial-gradient() postavljena je duž svog polumjera, protežući se prema van od središta elementa u kružnom ili eliptičnom obliku, s bojama gradijenta ravnomjerno raspoređenim po prostoru elementa.
Načelo stvaranja radijalnih gradijenata slično je stvaranju linearnih gradijenata (linear-gradient()), za ovo samo trebate odrediti početnu boju - ona će se nalaziti u sredini gradijenta i završnu boju, koja će se nalaziti na kraju gradijenta.
Više o radu s gradijentima možete saznati u člancima "" i "". Imajte na umu da članci ističu nijanse rada sa starim preglednicima i daju brojne primjere.
Podrška za preglednik
Funkcija
Opera
IExplorer
Rub
radijalni gradijent()
26.0 10.0 -webkit-
16.0 3.6 -moz-
12.1 11.1 -o-
6.1 5.1 -webkit-
10.0
12.0
CSS sintaksa:
pozadinska slika / pozadina : radijalni gradijent ([oblik ključne riječi (ili veličina)] na položaju x-osi y-osi, boja 1 – stop 1, . . . , boja n – zaustavljanje n);
Oblik
Eliptični oblik je definiran vrijednošću elipse, koja je zadana (nema potrebe za navođenjem), a kružni oblik definiran je vrijednošću kruga.
Ključna riječ
Gradijent se izračunava na temelju udaljenosti do bliža/daleka strana, ili najbliži / najudaljeniji kut element.
Značenje
Opis
najbliža strana
Gradijent se izračunava na temelju udaljenosti do najbliže strane elementa od njegovog središta za okrugle gradijente ( x os ili y os) i najbližim strankama ( x os I y os) ako je gradijent u obliku elipse. pozadinska slika: radijalni gradijent (krug najbliže strane na 60% 60%, boja šljive, crna, narančasta); pozadinska slika: radijalni gradijent (najbliža strana elipse na 60% 60%, boja šljive, crna, narančasta);
najbliži kut
Gradijent se rasteže tako da prolazi kroz kut elementa koji je najbliži središtu (veličina se izračunava na temelju udaljenosti do najbližeg kuta elementa). pozadinska slika: radijalni gradijent (krug najbliži kut na 60% 50%, boja šljive, crna, narančasta);
pozadinska slika: radijalni gradijent (najbliži kut elipse na 60% 50%, boja šljive, crna, narančasta);
najudaljenija strana
Gradijent se izračunava na temelju udaljenosti udaljene strane elementa od njegovog središta za okrugle gradijente ( x os ili y os) i najbližim strankama ( x os I y os) ako je gradijent u obliku elipse. pozadinska slika: radijalni gradijent (krug najudaljenije strane na 100% 50%, boja šljive, crna, narančasta);
pozadinska slika: radijalni gradijent (najudaljenija strana elipse na 100% 50%, boja šljive, crna, narančasta);
najdalji-kutak
Gradijent se rasteže tako da prolazi kroz kutove elementa koji su najudaljeniji od središta (veličina se izračunava ovisno o udaljenosti do udaljenog kuta elementa). Ovo je zadana vrijednost.pozadinska slika: radijalni gradijent (najudaljeniji kut kruga na 60% 60%, boja šljive, crna, narančasta);
pozadinska slika: radijalni gradijent (najudaljeniji kut elipse na 60% 60%, boja šljive, crna, narančasta);
Veličina
Postavlja veličinu oblika gradijenta. Nema potrebe za navođenjem vrijednosti kruga ili elipse, zabranjeno koristiti ključne riječi ako je navedena veličina. Ako navedete jedna vrijednost, tada će ga preglednik smatrati kao . Ako navedete dva značenja, To prva vrijednost preglednik će smatrati kao horizontalni radijus, A drugo značenje Kako vertikalni radijus za eliptični element.
Skrećem vam pozornost na činjenicu da Ne smijete koristiti postotne vrijednosti ako navedete samo jednu vrijednost(radijus za okrugli element), kada se koristi dva značenja(za eliptični gradijent) Dopušteno je navesti ove vrijednosti kao postotke.
Položaj
Početna pozicija radijalnog gradijenta određena je ključnom riječi -center, ali se može promijeniti pomoću jedinice duljine(Na primjer: px ili em), postotne vrijednosti I ključne riječi, koji se koriste u CSS svojstvo background-position , odgovoran je za položaj (poziciju) pozadinske slike.
Značenje
Opis
lijevo gore lijevi centar lijevo dolje desno gore desni centar desno dolje središnji vrh centar centar središnje dno
Postavlja položaj slike. Prva vrijednost je vodoravni položaj, a druga vrijednost je okomiti položaj. Ako navedete samo jednu ključnu riječ, druga vrijednost će biti "centar"
x%y%
0% 0%
(ovo je zadana vrijednost). U donjem desnom kutu 100% 100%.
Ako je navedena samo jedna vrijednost, bit će navedena i druga vrijednost 50%.
x y
Postavlja položaj slike. Prva vrijednost je vodoravni položaj, a druga vrijednost je okomiti položaj. Gornji lijevi kut ima 0 0.
Vrijednosti mogu biti u pikselima ili drugim CSS jedinicama. Ako je navedena samo jedna vrijednost, bit će navedena i druga vrijednost 50%.
Možete dijeliti interes I jedinice.
Boja
Dopušteno je koristiti ne samo "Unaprijed definirane boje", već i bilo koje "" - heksadecimalni(HEX), RGB/-A i HSL/-A vrijednosti boja.
Stop
Vrijednosti zaustavne točke (boja se zaustavlja) navedeni su u jedinice duljine(Na primjer - px ili em) i u postotne vrijednosti. Prijelomna točka govori pregledniku da bi gradijent radijusa trebao doseći zadanu boju prema zadanoj vrijednosti i glatko prijeći na sljedeću boju, ako postoji.
Primjer upotrebe
Pogledajmo radijalne gradijente kružnog i eliptičnog oblika i vidimo u čemu je njihova razlika u sljedećem praktičnom primjeru:
Primjer korištenja radijalnih gradijenata
U ovom smo primjeru stvorili četiri bloka i dali im radijalne gradijente. Gornji blokovi imaju eliptični oblik, i donji blokovi okrugli oblik.
Pogledajmo primjer pozicioniranja radijalnog gradijenta.
Primjer pozicioniranja radijalnih gradijenata
na 5px 45px
klasa = "test2" > na 50% najviše
klasa = "test3" > gore lijevo
na dnu od 0%.
klasa = "test5" > dolje u sredini
klasa = "test6" > na 100% 100%
U ovom smo primjeru stvorili šest blokova s različitim oblicima gradijenata (kružni i eliptični) i pozicionirali su gradijent za svaki blok drugačije, pokazujući vrijednosti u piksela, postotak i koristeći ključne riječi.
Imajte na umu da ako je radijalni gradijent prema zadanim postavkama postavljen centriran, a element je kvadratnog oblika, tada nećete vidjeti razliku između kružnog gradijenta i gradijenta u obliku elipse.
Pogledajmo primjer korištenja zaustavnih točaka radijalnog gradijenta:
U ovom smo primjeru stvorili šest blokova: tri gornja bloka razlikovati se od tri niže samo po oblik gradijenta, ključne točke su iste:
Prvi i četvrti blok – gradijent dvije bojecrvena boja, koji glatko prelazi u zelena, zauzimajući ostatak elementa.
Drugi i peti blok – gradijent tri boje, u kojoj je zauzeto 10% centra crvena boja, koji glatko prelazi u zelena, s točkom zaustavljanja od 50%, zauzvrat glatko prelazi na plava, koji zauzima ostatak elementa.
Treći i šesti blok – gradijent tri boje, u kojoj je zauzeto 50% centra crvena boja, koji glatko prelazi u zelena, s točkom zaustavljanja od 85%, zauzvrat glatko prelazi u plava, koji zauzima cijeli preostali mali dio elementa.
Pogledajmo kako kontrolirati veličinu radijalnog gradijenta u CSS-u.
Primjer dimenzioniranja radijalnih gradijenata
U ovom primjeru stvorili smo tri bloka:
Prvi blok- naznačili smo jedna vrijednost 50px , što je preglednik protumačio kao polumjer za kružni gradijent. Specificirano za gradijent 7 boja. Primijetite da najudaljenija boja ispunjava preostalo područje.
Drugi blok- naznačili smo dva značenja u postocima: prva vrijednost - horizontalni radijus, A drugo značenje - okomiti radijus za eliptični gradijent. Specificirano za gradijent 8 boja. Imajte na umu da smo odredili bijelu kao konačnu boju, koja je ispunila preostalo područje(jedna opcija je ostaviti samo oblik gradijenta).
Treći blok- naznačili smo dva značenjau jedinicama dužine (px I em): prva vrijednost - horizontalni radijus, A drugo značenje - okomiti radijus za eliptični element. Specificirano za gradijent 7 boja.
Radijalni gradijenti prikazuju se drugačije od linearnih. Ako su linearne boje smještene okomito na liniju koja određuje smjer, tada se u radijalnim bojama odvajaju od danog središta, a gradijent može poprimiti oblik kruga ili elipse.
Za najjednostavniji gradijent dovoljno je postaviti samo boje:
Prema zadanim postavkama središte gradijenta je u središtu, gradijent ima oblik elipse:
Osim boja, možete postaviti oblik, položaj i veličinu gradijenta. Parametri su kombinirani i ponašaju se složenije nego u linearnim gradijentima.
Oblik(konačni oblik gradijenta) može biti krug ili elipsa. Zadana je elipsa, gradijent nastoji zauzeti sav slobodni prostor elementa, rastežući se ako je potrebno.
Kako bi gradijent imao oblik kruga, to se mora eksplicitno specificirati pomoću ključne riječi circle.
Ako oblik nije naveden, ali je navedena veličina, jedna vrijednost određuje radijus kruga; ako postoje dvije vrijednosti, gradijent ima oblik elipse. Ako su dimenzije prisutne, eksplicitno određivanje oblika gradijenta se zanemaruje.
Položaj određuje gdje će se nalaziti centar gradijent. Koriste se iste ključne riječi kao za linearni gradijent, ali s prefiksom at: zadane su na vrhu, na desnoj strani, na dnu, lijevo i u sredini.
Također se mogu kombinirati za postavljanje gradijenta na danu stranu, na primjer: na desnom vrhu - u gornjem desnom kutu.
U nastavku možete vidjeti kako funkcioniraju različite pozicije:
Također možete postaviti točan položaj gradijenta, na primjer na 20% 50% ili na 10px 150px.
Veličina određuje dimenzije konačnog oblika gradijenta. Za eliptične gradijente vrijednosti se mogu odrediti u postocima, ali za kružne - ne.
Ako je navedena jedna vrijednost, ona se smatra polumjerom kružnog gradijenta. Ako su navedene dvije vrijednosti, prva se smatra vodoravnim radijusom elipse, a druga se smatra okomitim radijusom.
Ispod su primjeri kružnih i eliptičnih gradijenata. Oblik figure određen je zadanim dimenzijama:
Također možete koristiti ključne riječi:
najbliža strana - gradijent završava na granici elementa koji je najbliži središtu gradijenta. Ako je to elipsa, gradijent dodiruje sve granice elementa. najdalja strana - gradijent završava na krajnjoj granici elementa. Ako je to elipsa, gradijent dodiruje sve granice elementa. closest-corner - Konačni oblik se rasteže tako da prolazi kroz kut elementa koji je najbliži središtu gradijenta. Ako je konačni oblik elipsa, gradijent se proteže preko cijelog oblika. S ovim parametrom, gradijent ispunjava cijeli oblik, djelomično se protežući izvan njegovih granica. najdalji kut - slično najbližem kutu, samo krajnji oblik prolazi kroz kut najudaljeniji od središta gradijenta. Zadana vrijednost.
Nekim gradijentima je dodan položaj kako bi se radnja koda lakše vidjela:
Radijalni gradijent se također može ponavljati - ovo je ponavljajući radijalni gradijent.
Kao i kod linearnog gradijenta, ponavljajući gradijent ne prikazuje se baš uredno.
Kombiniranjem nekoliko pozadina s različitim parametrima možete dobiti nevjerojatne stvari:
Ako prilikom izrade uzoraka koristite relativne jedinice (em, %) umjesto apsolutnih (px), veličina rezultirajućih uzoraka može se jednostavno prilagoditi promjenom samo veličine fonta.
Gradijent pozadine
CSS gradijenti omogućuju prikaz glatkih prijelaza između dvije ili više navedenih boja.
Radijalni gradijenti (definirani njihovim središtem)
CSS linearni gradijenti
Da biste stvorili linearni gradijent, morate definirati najmanje dvije točke boje. Boje su boje koje želite napraviti glatke prijelaze između njih. Također možete odrediti početnu točku i smjer (ili kut) zajedno s efektom gradijenta.
Bilješka:Internet Explorer 9 i starije verzije ne podržavaju gradijente.
"/> Pogledajte demo u uređivaču
Korištenje transparentnosti
CSS gradijenti također podržavaju transparentnost, koja se može koristiti za stvaranje efekata blijeđenja.
Da bismo dodali prozirnost, koristimo funkciju RGBA() za definiranje graničnika boja. Posljednji parametar u funkciji RGBA() može biti vrijednost između 0 i 1, a određuje prozirnost boje: 0 označava punu prozirnost, 1 označava punu boju (bez prozirnosti).
Sljedeći primjer prikazuje linearni gradijent koji počinje slijeva. Počinje potpuno prozirno, prelazi u punu crvenu boju: