In deze tutorial laten we u zien hoe u veel achtergrondafbeeldingen kunt maken die elkaar vervangen terwijl u door de pagina bladert.
Tegenwoordig kun je op internet veel sites met het parallax-effect zien. Een soortgelijk effect kan worden bereikt via CSS. In theorie hoef je alleen maar het parallax-effect op de achtergrondafbeeldingen toe te passen. Om dit te doen, kijk op CSS eigendom achtergrondbijlage.
Een structuur creëren
HTML heel simpel: alternatieve elementen
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolore incidunt suscipit similique, dolor corrupti cumque qui consectetur autem work fuga quas ipsam doloribus sequi...
Stijlen
De standaardwaarde voor de eigenschap background-attachment is scroll , wat betekent dat de achtergrond langs het element schuift. Als u de waarde instelt op fixed , wordt de positie vastgezet.
Body, html, main ( /* important */ height: 100%; ) .cd-fixed-bg ( min-height: 100%; achtergrondgrootte: omslag; achtergrondbijlage: vast; achtergrondherhaling: geen herhaling ; achtergrondpositie: midden midden ) .cd-fixed-bg.cd-bg-1 ( achtergrondafbeelding: url("../img/cd-background-1.jpg"); ) .cd-fixed- bg.cd-bg-2 ( achtergrondafbeelding: url("../img/cd-background-2.jpg"); ) .cd-fixed-bg.cd-bg-3 ( achtergrondafbeelding: url( "../img/cd-background-3.jpg" ) .cd-fixed-bg.cd-bg-4 ( achtergrondafbeelding: url("../img/cd-background-4.jpg" ); .cd-scrollen-bg ( min. hoogte: 100%; )
Bij het installeren van een stationaire achtergrondafbeelding onder de tafel, waarin we tekst en andere nuttige informatie zullen hebben, wordt het volgende effect gecreëerd: bij het scrollen door een tabel met tekst blijft de achtergrond eronder stationair en beweegt niet mee met de tabel. Zoals hier:
Dit effect kan een illusie van dubbele gelaagdheid creëren, waardoor er wat ruimte op uw pagina's ontstaat.
Normaal gesproken wordt het effect van de achtergrond van een stilstaand beeld bereikt door de volgende kenmerken in te stellen op het CSS-stijlblad: background-attachment: fixed; We hebben het over een CSS-stylesheet, die je in een apart document hebt staan met de extensie .css
Er zijn verschillende manieren om te installeren wat we nodig hebben.
1e methode.
We selecteren een afbeelding die onze achtergrond zal zijn. In dit geval maak ik deze foto (klik op de miniatuur om de volledige grootte te zien):
In het CSS-stijldocument, waar we de parameters voor BODY instellen, voegt u de volgende constructie in:
BODY(achtergrondafbeelding: url(adres achtergrondafbeelding); achtergrondbijlage: vast; achtergrondherhaling: niet-herhaling; achtergrondpositie: bovenaan;)
In dit geval nemen we een grote afbeelding op volledig scherm als achtergrondafbeelding (bijvoorbeeld 1280 bij 1024 px).
Opmerking: Als u geen document in CSS-stijl heeft, moet u er een maken zoals aangegeven in - en een link naar het document in CSS-stijl toevoegen in de code van uw html-pagina, zoals aangegeven in dezelfde les.
Dit zijn dus de parameters die we instellen met behulp van stijlen:
Achtergrondafbeelding: url(adres achtergrondafbeelding); - voer het adres van onze achtergrondafbeelding in 1280 bij 1024 px.
Achtergrondbijlage: vast; - we geven de achtergrond de instructie om vast te blijven, dat wil zeggen bewegingloos.
Achtergrondherhaling: geen herhaling; - we geven de achtergrond een instructie om deze niet te reproduceren.
Achtergrondpositie: boven; - stel de positie van de achtergrondafbeelding in: stel deze in op de bovenrand van de pagina.
Dus hebben we deze constructie in het CSS-stijldocument in BODY ingevoegd:
BODY(achtergrondafbeelding: url(adres achtergrondafbeelding); achtergrondbijlage: vast; achtergrondherhaling: niet-herhaling; achtergrondpositie: bovenaan;)
Ik heb een eenvoudige tabel op 70% van het scherm gemaakt en er tekst en twee afbeeldingen in geplaatst voor de duidelijkheid. Dit is wat we op de pagina kregen: (om het effect van een stilstaande achtergrond te zien, scrollt u de pagina omhoog en omlaag).
2e methode.
Laten we proberen een kleine afbeelding te plaatsen die zich automatisch herhaalt en de hele ruimte van de pagina vult en een achtergrondpatroon vormt. Hier is de foto:
Tegelijkertijd fixeren we de volledige achtergrond door de volgende constructie in het CSS-stijlblad te schrijven:
BODY (achtergrondafbeelding: url(adres van de achtergrondafbeelding); achtergrondbijlage: vast; )
Hier stellen we alleen de parameter in: background-attachment: fixed; - dat wil zeggen dat ze een instructie aan de browser voorschreven om de achtergrondafbeelding bewegingloos te maken. Omdat we niet tegen de afbeelding hebben gezegd dat deze zich niet mag vermenigvuldigen, zou deze zich op het hele scherm moeten vermenigvuldigen.
3e methode.
Laten we proberen een achtergrondafbeelding aan de ene kant te installeren en een tabel met tekst en afbeeldingen op de pagina aan de andere kant plaatsen, zodat deze de achtergrondafbeelding niet blokkeert. Om dit te doen, schrijft u het volgende in het CSS-document:
BODY (achtergrond:#e0ddd8 url(adres achtergrondafbeelding) niet-herhaling vast linksboven)
Achtergrond:#e0ddd8 url (adres van de achtergrondafbeelding) - de kleur onder de achtergrondafbeelding is beige, passend bij de achtergrondkleur van de afbeelding zelf. Dit wordt gedaan zodat de overgang van onze afbeelding naar de achtergrond niet zichtbaar is (de afbeelding beslaat slechts een deel van het scherm).
Geen herhaling - de foto vermenigvuldigt zich niet (er is één grote foto met een van mijn favoriete Amerikaanse acteurs - Robert Duvall).
Vast - de achtergrond is vast, dat wil zeggen bewegingloos.
Linksboven - uitgelijnd op de linkerbovenrand van het scherm (u kunt de afbeelding aan de rechterkant plaatsen en de sitetabel aan de linkerkant, zoals u wilt. Om dit te doen, schrijft u in het html-document in de tabel:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <div id = "cbp-fbscroller" class = "cbp-fbscroller" > |
In het etiket we hebben navigatie gedefinieerd door blokken met verschillende afbeeldingen. Dat is het met de HTML-opmaak. Laten we verder gaan met stijlen.
CSS
Wat stijlen betreft, er zijn er hier niet veel.
Wij maken de blokhoogte zo hoog mogelijk. Dat wil zeggen, de hoogte van het browservenster van de gebruiker.
1 2 3 4 5 6 | html , body , .container, .cbp-fbscroller, .cbp-fbscroller sectie ( hoogte: 100% ; ) |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | .cbp-fbscroller > nav (positie: vast; /* menu staat altijd op dezelfde plek */ z-index: 9999; /* niets mag het menu overlappen */ rechts: 100px; /* het is 100 pixels vanaf de rechterrand */ bovenkant: 50%; /* en verticaal in het midden van de pagina */ breedte: 26px; /* menubreedte */ -webkit-transform : translateY(-50% );-moz-transform: vertalenY(-50% ); |
-ms-transform: vertalenY(-50%);
transformeren: vertalenY(-50% );
1 2 3 4 5 6 7 8 9 10 | ) |
/* hieronder staan de stijlen voor elk element (link) in het menu */
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | .cbp-fbscroller > nav a (weergave: blok; positie: relatief; z-index: 9999; kleur: transparant; breedte: 26px; hoogte: 26px; omtrek: geen; marge: 25px 0; randradius: 50%; rand: 4px effen #fff ; |
Ik heb commentaar gegeven op een aantal panden. Ik denk dat het duidelijk is welk pand waarvoor verantwoordelijk is. Als dit niet helemaal het geval is, schrijf dan in de reacties! 🙂<Als resultaat krijgen we het volgende menu:.cbp-fbscroller sectie (positie: relatief; achtergrondpositie: midden bovenaan; achtergrondherhaling: niet-herhaling; achtergrondgrootte: omslag; ) .no-touch .cbp-fbscroller sectie (achtergrondbijlage: vast;)<Het blijft nodig om de benodigde afbeeldingen voor de overeenkomstige blokken in te stellen:
#fbsection1 ( achtergrondafbeelding : url (../images/1 .jpg) ; ) #fbsection2 ( achtergrondafbeelding : url (../images/2 .jpg) ; ) #fbsection3 ( achtergrondafbeelding : url (../images/2 .jpg) ; ) #fbsection3 ( achtergrondafbeelding : url (../images/2 .jpg) ; ) ./images/3 .jpg) ; ) #fbsection4 ( achtergrondafbeelding : url (../images/4 .jpg) ; ) #fbsection5 ( achtergrondafbeelding : url (../images/5 .jpg) ; )
Javascript links!/script >
schrift >
$(function() (cbpFixedScrollLayout.init(); ));
/script>
Conclusie
Dat is alles. Het is een prachtig effect en ik denk dat het niet moeilijk zal zijn om het in je website in te voegen! Ik wens je succes, als je problemen hebt met de installatie, schrijf dan in de reacties :)
Er zijn verschillende manieren om de achtergrond van een website te wijzigen. Voor dit doel worden de mogelijkheden van CSS of html gebruikt. Maar veel van de eigenschappen voor het werken met de achtergrond hebben dezelfde naam en toepassingsmethode in deze webtechnologieën.
Basisprincipes van het werken met achtergronden in HTML
Verschillende elementen kunnen als achtergrond worden gebruikt:
- Kleur;
- Achtergrondafbeelding;
- Textuur afbeelding.
Laten we het gebruik van elk van hen in meer detail bekijken.
Om de achtergrondkleur voor een site in te stellen, gebruikt u de eigenschap background-color van het style-attribuut. Dat wil zeggen, als u de hoofdkleur voor een webpagina wilt instellen, moet u deze in de tag schrijven
. Bijvoorbeeld:Website-achtergrond #55D52B
Naast de hexadecimale kleurcode wordt een waarde in trefwoord- of RGB-formaat ondersteund. Voorbeelden:
Website-achtergrond rgb(23.113.44)
Websiteachtergrond groen
Het instellen van de achtergrondkleur met behulp van trefwoorden heeft een aantal beperkingen vergeleken met de andere twee methoden.
HTML ondersteunt slechts 16 trefwoorden om kleuren in te stellen. Hier zijn er een paar: wit, rood, blauw, zwart, geel en anderen.
Om de achtergrond voor een HTML-website in te stellen, is het daarom beter om het hexadecimale of RGB-formaat te gebruiken.
Naast kleurselectie zijn er ook andere aanpassingsopties beschikbaar. Als de eigenschap background-color is ingesteld op transparant , wordt de achtergrond van de pagina transparant. Deze waarde wordt standaard aan deze eigenschap toegewezen.
Laten we nu eens kijken naar de mogelijkheden van de hyperteksttaal voor het instellen van een achtergrondafbeelding voor een site. Dit kan gedaan worden met behulp van de eigenschap background-image.
Zoals u in de code kunt zien, is de afbeelding gekoppeld via het URL-pad dat tussen haakjes is opgegeven. Maar niet alle afbeeldingen zijn zo groot dat hun formaat het hele schermgebied vult. Laten we eens kijken hoe de kleinere afbeelding wordt weergegeven.
Stel dat we een website over poëzie ontwikkelen, en we moeten een afbeelding van Pegasus als achtergrond gebruiken. Het gevleugelde paard zal de vrijheid van het creatieve denken van de dichter verpersoonlijken!
We hebben nodig dat de afbeelding één keer in het midden van het scherm wordt weergegeven. Maar helaas begrijpt de browser onze verheven verlangens niet. En het geeft een kleinere afbeelding weer voor de achtergrond van de site, zo vaak als het schermgebied toelaat:
Misschien zijn vier lachende paarden met vleugels te veel inspiratie voor dichters. Daarom verbieden wij het klonen van onze Pegasus. We doen dit met behulp van de eigenschap background-repeat. Mogelijke waarden:
- repeat-x – herhaal de achtergrondafbeelding horizontaal;
- repeat-y – verticaal;
- herhaal – op beide assen;
- geen herhaling – herhaling is verboden.
Van de genoemde opties zijn we geïnteresseerd in de laatste. Voordat we de achtergrond van de site veranderen, gebruiken we deze in onze code:
Maar het zou natuurlijk beter zijn als onze flyer in het midden van het scherm stond. De eigenschap background-position is precies bedoeld voor het positioneren van de achtergrondafbeelding op de pagina. U kunt locatiecoördinaten op verschillende manieren instellen:
- Zoekwoord ( boven, onder, midden, links, rechts);
- Percentage – het tellen begint in de linkerbovenhoek;
- In meeteenheden (pixels).
Laten we de eenvoudigste centreeroptie gebruiken:
Het komt voor dat u tijdens het scrollen de positie van een afbeelding moet fixeren. Gebruik daarom de speciale eigenschap background-attachment voordat u een afbeelding als achtergrond van de site maakt. De waarden die het accepteert zijn:
- rol;
- vast.
We hebben de laatste waarde nodig. Nu ziet onze voorbeeldcode er als volgt uit:
Website textuur achtergrond
In het eerste voorbeeld gebruikten we een groot en prachtig woestijnlandschap als achtergrond. Maar voor zulke schoonheid moet je volledig betalen. Het gewicht van een afbeelding gemaakt in hoge kwaliteit kan enkele megabytes bedragen.
Dit volume heeft op geen enkele manier invloed op de laadsnelheid van de pagina van de browser met een snelle internetverbinding. Maar hoe zit het met mobiel internet, bij gebruik ervan zal het laden van meerdere "meters" veel tijd kosten?
Al deze problemen worden opgelost met behulp van een gestructureerde achtergrond. Het gebruikt een kleine afbeelding als textuurpatroon. Zelfs als het vele malen wordt herhaald, wordt de tekening slechts één keer geladen.
Korte informatie
CSS-versies
Waarden
vast Maakt de achtergrondafbeelding van het element bewegingloos.scrollen Zorgt ervoor dat de achtergrond meebeweegt met de inhoud.
HTML5 CSS2.1 IE Cr Op Sa Fx
achtergrondbijlage
Voorbeeld tekst
HTML5 CSS3 IE Cr Op Sa Fx
Objectmodel
document.getElementById("elementID ").style.backgroundAttachment .Browsers
In Internet Explorer 6 werkt vast alleen voor tags
of
Internet Explorer-versies tot en met 7.0 ondersteunen de overervingswaarde niet.