Mājas lapa » Kodēšana » Izveidojiet tikai CSS attēlu, kas atklāj efektu ar caurspīdīgām robežām

    Izveidojiet tikai CSS attēlu, kas atklāj efektu ar caurspīdīgām robežām

    A Tikai CSS attēlā redzams efekts var atrisināt dažādos veidos. Tas tiešām ir diezgan viegli kodēt dizainu, kurā attēls izceļas (ir pārpildīts) tā cietā fona -Jūs vienkārši ievietojiet attēlu pār mazāku elementu ar stabilu fonu.

    Jūs varat iegūt tādu pašu rezultātu, ja lietojat pārredzamas robežas, kur jūs turat fona elementa lielums ir vienāds kā priekšplāna un pievieno pārredzamas robežas, lai izveidot tukšu vietu lai jaunās zināšanas pārplūst.

    Tur ir dažas priekšrocības, izmantojot pēdējo metodi. Tā kā tas ir caurspīdīgās robežas, kas nodrošina zonu, kurā jaunās zināšanas pārplūst, mēs varam kontrolēt pārplūdes virzienu starp kreiso, labo, augšējo un apakšējo robežu. Arī tam ir tāds pats izmērs gan priekšplānā, gan fonā atvieglo abu elementu pārvietošanu vienlaicīgi visā lapā.

    Īsumā, mēs redzēsim, kā radīt tikai CSS attēlu, kas atklāj efektu izmantojot a mazāks ciets fons ar priekšplāna attēlu, kam ir pārredzamas robežas. Jūs varat pārbaudīt galīgā demonstrācija zemāk.

    1. Izveidojiet sākotnējo kodu

    HTML, tikai viens

    ir nepieciešams:

     

    CSS izmantojam divi CSS mainīgie, --bgc un --blāvi priekš fona krāsa un izmēriem no .foo konteiners. Piemērā es izmantoju tāda pati vērtība lai izveidotu kvadrātveida kastes platumu un augstumu, izveidojiet atsevišķi mainīgie augstumam un platumam, ja vēlaties taisnstūri.

    Mēs arī pievienojam pozīcija: relatīvais noteikums .foo, tā, lai tās pseidoelementi, ko mēs izmantosim atklāt attēlu, var būt absolūti novietots (skatīt zemāk) un tādējādi sakrauj viens otru.

     .foo --bgc: # FFCC03; - dim: 300px; platums: var (- dim); augstums: var (- dim); fona krāsa: var (- bgc); pozīcija: relatīvais;  

    Mēs pievienojiet tukšu saturu īpašums abiem pseidoelementiem, .foo :: pirms un .foo :: pēc, lai tos pareizi padarītu.

     .foo :: pirms, .foo :: pēc content: "; pozīcija: absolūta; pa kreisi: 0; top: 0; 

    The .foo elementu, tā divi pseidoelementi, .foo :: pirms, .foo :: pēc, un viņu : lidināties pseido klases dabūt pāreju īpašums tas būs pievienojiet vieglumu pārejai tiem 500 milisekundes (puse sekundes).

     .foo, .foo: hover, .foo :: pirms, .foo :: after, .foo: hover :: pirms, .foo: hover :: pēc pāreja: pārveidot 500ms vieglumu;  

    2. Pievienojiet attēlu

    Mēs pievienojam attēlu .foo :: pirms pseidoelements kā fona attēlu, un izmēru, lai aptvertu visu pseidoelementu Ar platums un augstums īpašības. Mēs kaudze to pa labi zem .foo elementu izmantojot z-indekss: -1 noteikums.

     .foo :: pirms platums: 100%; augstums: 100%; fons: url (camel.png) centrs / vāks; z-indekss: -1;  

    The centrs atslēgvārdu centrē attēlu, kamēr piesegt atslēgvārds skala attēlu uz aptver visu elementu saglabājot tā proporciju.

    Uz zemāk esošais ekrānuzņēmums jūs varat redzēt, ko mēs esam līdz šim (z-indekss tiek noņemts .foo :: pirms tā, lai to varētu redzēt):

    3. Pievienojiet slīdošo fonu

    Lai pievienotu mazāks (izbīdāms) fons aiz attēla, mēs izmantosim citu pseidoelementu, .foo :: pēc.

    Mēs izveidojam citu CSS mainīgo, --b, priekš robežu platums. Mēs dodam trīs pārredzamas robežas uz :: pēc pseidoelements: augšā, pa labi un apakšā.

     .foo :: pēc - b: 20px; platums: calc (100% - var (- b)); augstums: calc (100% - aprēķināts (var (- b) * 2)); robeža: var (- b) cieta caurspīdīga; robežu pa kreisi: nav; box-shadow: ieliktnis 0 var (- dim) 0 var (- bgc); filtrs: spilgtums (.8); z-indekss: -2;  

    The platums tiek aprēķināts kā calc (100% - var - b)) kas atgriežas kopējais platums .foo mīnus tās horizontālo robežu kopējais platums (tikai labā robeža, jo nav kreisās malas).

    The augstums tiek aprēķināts kā calc (100% - aprēķināts (var (- b) * 2)) kas atgriežas kopējais augstums .foo mīnus vertikālo robežu kopējais platums (augšējā un apakšējā robeža).

    Ar kastes ēna īpašums, mēs arī pievienojiet horizontālu ieliktņa ēnu izmērs ir tāds pats kā .foo (kurš ir var (- dim)).

    CSS filtrs spilgtums (.8) tumšāka fona krāsa mazliet, un visbeidzot, z-indekss: -2 noteikums novieto :: pēc zem pseidoelementa :: pirms kas satur attēlu.

    Šeit ir demo ekrānuzņēmums līdz šim sniegts z-indekss no abiem pseidoelementiem, lai tos varētu redzēt):

    4. Pievienojiet transformāciju

    Mēs pievienojiet pārveidot īpašums abiem pseidoelementiem, tāpēc, kad lietotājs pārspēj .foo, abi pseidoelementi ir pārvietots horizontāli.

    Kā mēs jau ir pievienojis pāreju visiem elementiem 1. posma beigās attēla un tā fona kustība abi ir animēti.

     .foo: hover :: pirms, .foo: hover :: pēc transform: translateX (100%);  

    Zemāk jūs varat redzēt galīgā demonstrācija.

    Bonuss: pēc izvēles

    Ja tiek parādīts .foo blakus citiem elementiem lapā un vēlas, lai šie citi elementi būtu pāriet prom tad, kad attēls un tā fons izplūst pievienojiet tādu pašu platumu kā. \ t .foo uz .foo: lidināties elementu.

     .foo: hover margin-right: var (- dim);