Lyhyesti
- CSS:n background hyväksyy pilkuilla erotetut kerrokset, joista ensimmäinen piirretään päällimmäiseksi.
- Taustaväri asetetaan vain kerran viimeiseen kerrokseen, ja se näkyy kaikkien kuvien ja liukuvärien alla.
- background-lyhenteessä background-size seuraa sijaintia vinoviivan jälkeen, kuten center / cover.
- Liukuvärikerros kuvakerroksen edellä samassa määrittelyssä on helpoin tapa sävyttää kuva tekstille luettavaksi.
- CSS-taustakuvat löytyvät myöhemmin kuin img-elementit, joten tärkeä pääkuva voi tarvita esilatausvihjeen.
Tällä sivulla
CSS-taustat muodostuvat yhden elementin kerroksista. background hyväksyy pilkuilla erotetut kuvat ja liukuvärit, joista ensimmäinen piirretään päälle, sekä yhden värin alimmaiseksi. Näin teet sävytetyn pääkuvan, pehmeän valon liukuvärille tai pintakuvion brändivärille ilman lisäelementtejä. Jäljelle jää lyhenteen arvojen ymmärtäminen.
background-lyhenne arvo kerrallaan
Lyhenne asettaa enintään kahdeksan erillistä ominaisuutta. Pois jätetyt palautuvat oletuksiin, mikä aiheuttaa usein ”Miksi taustan koko katosi?” -virheen.
background-colorMitä se ohjaa
Tavalliset arvot
#0f0b1e, oklch(20% 0.05 290)background-imageMitä se ohjaa
Tavalliset arvot
url(photo.webp), linear-gradient(…)background-positionMitä se ohjaa
Tavalliset arvot
center, top right, 50% 30%background-sizeMitä se ohjaa
Tavalliset arvot
cover, contain, 200px autobackground-repeatMitä se ohjaa
Tavalliset arvot
no-repeat, repeat, repeat-xbackground-attachmentMitä se ohjaa
Tavalliset arvot
scroll, fixed, localbackground-origin ja background-clipMitä se ohjaa
Tavalliset arvot
padding-box, border-box, text.hero {
/* image | position / size | repeat | colour */
background: url("harbour.webp") center 30% / cover no-repeat #0f172a;
}Taustakerrosten pinoaminen
Listaa kerrokset ylhäältä alas pilkuilla erotettuna. Jokaisella voi olla oma sijainti, koko ja toisto samassa järjestyksessä erillisissä ominaisuuksissa. Vain viimeinen kerros voi sisältää värin. Ajattele katsovasi kuultopaperipinon läpi.
.section {
background:
radial-gradient(circle at 80% 20%, #f472b6 0%, transparent 45%),
radial-gradient(circle at 15% 85%, #38bdf8 0%, transparent 50%),
linear-gradient(160deg, #1e1b4b 0%, #0f0b1e 100%)
#0f0b1e;
}Käytä ulommissa väripisteissä transparent-arvoa, jotta valot sulautuvat alla olevaan. Muodoista kertovat CSS:n säteittäinen liukuväri ja CSS-verkkoliukuväri.
Liukuväri taustakuvan päällä
Hyödyllisin kerrostausta sävyttää kuvan niin, että sanat erottuvat. Liukuväri ensin, kuva toiseksi. Tekstin kohdalta tumma ja muualla läpinäkyvä liukuväri säilyttää kuvasta enemmän kuin tasainen tumma peite.
.hero {
background:
linear-gradient(90deg, rgb(10 12 24 / 0.85) 0%, rgb(10 12 24 / 0.4) 45%, transparent 70%),
url("terrace.webp") center / cover no-repeat
#0a0c18;
color: #f8fafc;
}Tasainen peite tekee tekstistä luettavaa himmentämällä kaiken yhtä paljon.
Suunnattu kerros tummentaa vain tekstin kohdan ja jättää muun näkymän kirkkaaksi.
Liukuväripeite tarjoaa lisää reseptejä. Teksti kuvan päällä kertoo, milloin kannattaa siirtää sanoja tummentamisen sijaan.
background-size, sijainti ja toisto
covertäyttää laatikon ja rajaa yli menevän. Sopii kuviin ja reunasta reunaan ulottuviin pääkuviin.containmahduttaa koko kuvan ja jättää mahdollisesti tyhjää. Sopii logoihin ja kuvituksiin, joita ei saa rajata.- Yhdistä
coverharkittuunbackground-position-arvoon kuten50% 30%, jotta kasvot tai tuote pysyvät näkyvissä. - Pintakuviolle sopii
repeatja kiinteä koko kuten200px 200px, jotta rae pysyy samana kaikilla näyttöleveyksillä. background-attachment: fixedtekee työpöydällä parallaksivaikutelman, mutta moni mobiiliselain sivuuttaa sen. Älä rakenna sen varaan.
.card {
background:
url("grain.png") 0 0 / 200px 200px repeat,
linear-gradient(135deg, #7c2d12 0%, #ea580c 55%, #fdba74 100%);
}Myös background-clip: text on hyödyllinen: se leikkaa taustan kirjainten muotoon ja tekee CSS-liukuväritekstin. Käytä suurissa otsikoissa ja aseta tasainen color varalle. CSS-liukuväriteksti näyttää koko mallin.
Vältettävät virheet
Vältä
- background-size-arvoa ennen sen nollaavaa lyhennettä
- Väriä muualla kuin viimeisessä kerroksessa
- Varavärin puuttumista, jolloin teksti ei näy kuvan latautuessa
- Valtavaa kuvaa 400 pikselin laatikkoon
- Tärkeää sisältöä vain ruudunlukijalta piilossa olevassa taustakuvassa
Tee näin
- Lyhenne ensin, erilliset ohitukset sen jälkeen
- Yksi väri listan loppuun
- Varaväri lähelle kuvan keskimääräistä sävyä
- Laatikon kokoiset WebP- tai AVIF-kuvat
- Merkityksellinen kuva img-elementtinä alt-tekstillä, koriste taustaksi
Mukautuvat ja nopeat taustakuvat
image-set() antaa selaimen valita muodon tai tarkkuuden kuten img-elementin srcset. Taustakuva löytyy vasta CSS:n jäsennyksessä ja voi siksi saapua myöhään. head-osan esilatausvihje korjaa tämän.
<link rel="preload" as="image" href="/hero-1920.avif" type="image/avif" fetchpriority="high">
<style>
.hero {
background: image-set(
url("/hero-1920.avif") type("image/avif"),
url("/hero-1920.webp") type("image/webp"),
url("/hero-1920.jpg") type("image/jpeg")
) center / cover no-repeat #0f172a;
}
</style>Nopein tausta on usein kokonaan ilman kuvaa. Kerrostetut liukuvärit eivät vaadi latausta, ja pieni raekuva lisää pintaa muutamalla kilotavulla. CSS-liukuvärien suorituskyky ja WebP verrattuna PNG:hen ja JPG:hen käsittelevät valintoja. Jos et halua säätää valoa ja rakeisuutta käsin, Gradientlyn Mark antaa valmiin, omaleimaisen 1920×1080-pääkuvataustan samassa ilmeessä kuin somejulkaisut.
Usein kysyttyä
Miten lisään taustakuvan CSS:llä?
Aseta elementille background: url("image.webp") center / cover no-repeat; ja loppuun varaväri hitaasti latautuvaa kuvaa varten.
Miten laitan liukuvärin taustakuvan päälle?
Listaa liukuväri ensin ja kuva toiseksi samassa background-määrittelyssä pilkulla erotettuna. Ensimmäinen kerros piirretään päälle.
Voinko käyttää useita CSS-taustoja?
Kyllä. Erota kerrokset pilkuilla. Jokaisella voi olla oma sijainti, koko ja toisto, mutta väri vain viimeisessä kerroksessa.
Mitä eroa background-size-arvoilla cover ja contain on?
cover täyttää elementin ja rajaa ylimenevän, contain näyttää koko kuvan ja voi jättää tyhjää sen ympärille.
Miksi background-size lakkaa toimimasta?
background-lyhenne nollaa mainitsemattomat ominaisuudet. Aseta background-size lyhenteen jälkeen tai sisällytä koko siihen sijainnin jälkeen vinoviivalla.
Kirjoittanut Gradiently
Gradientlyn tiimi. Gradiently on Markien ympärille rakennettu suunnittelutyökalu: eläviä liukuvärejä, joiden ansiosta kaikki suunnittelemasi näyttää omaltasi.
Katso profiilimme