Od autora: Dobrodošli na naš blog za izradu web stranica. Ovo je serija članaka posvećena novoj specifikaciji, a danas bih vam želio reći kako napraviti izbornik u html5 i po čemu se ovaj proces razlikuje od istog u prethodnim verzijama jezika.
Koje su razlike
Prije svega, želio bih reći da specifikacija nije tako nova - počela se formirati još 2009. godine. Zapravo, od tada se stalno razvija - pojavljuju se nove značajke u html5, moderni preglednici sve više podržavaju upravo te značajke, tako da uskoro možemo govoriti o punoj podršci ove tehnologije, iako to nije nešto unificirano, već skup novih značajki, od kojih je svaka neovisna.
Pa, koja je razlika između kreiranja glavne navigacije (izbornika), budući da čitate članak na ovu temu, onda svakako mora postojati neke razlike. Pa, kako je prije nastajao jelovnik? Obično se za to koristio popis s grafičkim oznakama, koji se stavljao u dodatni spremnik za svu navigaciju - obični div.
Dakle, s pojavom novih oznaka, sada to možete učiniti ispravnije - umjesto div oznake, zamotajte izbornik u nav - novi semantički element koji je stvoren posebno da prikupi najvažnije poveznice u njega, grupirajte ih zajedno.
Možete staviti i popis i samo skup veza u navigaciju. Čini mi se da je ovo još jednostavnije i ispravnije rješenje, iako se u mnogim predlošcima još uvijek može vidjeti implementacija izbornika pomoću oznaka ul, li, a.
Zanimljivo je da je navigacijski spremnik dizajniran posebno za prioritetne veze na stranici. Zapravo, na stranici može biti više od jednog takvog spremnika, ali samo one poveznice koje stvarno čine glavnu navigaciju (na primjer, gornji glavni izbornik i njegov duplikat u podnožju stranice) trebaju biti postavljene u njih.
Kako napraviti horizontalni izbornik koristeći html5
Ne trebate čak ni okvir na popisu, sve će u početku biti prikazano u jednom retku, budući da su veze inline elementi.
Druga stvar je da su vrlo ograničeni u dizajnu zbog svojih inline svojstava. Moći ćete raditi samo s takvim svojstvima kao što su: boja, veličina fonta, margine. Ako želite postaviti određenu boju pozadine, napraviti separatore i dodati dopunu (ili odrediti veličinu svake stavke izbornika), to neće funkcionirati sa nizom.
Ovdje ćemo morati pretvoriti naše stavke u blok elemente. Da bi to učinili, trebaju napisati svojstvo:
prikaz : blok ; |
Sada idu odozgo prema dolje, odnosno naša navigacija je postala okomita. Da biste ga vratili u horizontalni, morate dodati određena svojstva. Na primjer, umjesto tipa bloka, definirajte za njih tip bloka bloka ili ih postavite na (float: lijevo). Pročitajte više o ovim metodama.
Vertikalna navigacija
Obično se za izradu okomitog izbornika u html5 koristi lista, ali nam je također dobra oznaka koju sam vam dao gore. Kao što ste vidjeli, ako pretvorite veze u blok veze, one će se automatski nizati jedna za drugom od vrha do dna, jer dva bloka ne mogu stajati na istoj liniji.
Sada na njih možete primijeniti željena pravila dizajna. Blokovi imaju mnogo više svojstava od inline elemenata, tako da imate puno više opcija. Na primjer, dodao sam ove:
a( dekoracija teksta: nema; boja: #fff; padding: 5px; veličina fonta: 22px; prikaz: blok; pozadina: linearni gradijent(desno, rgba(96,108,136,1) 0%,rgba(63,76,107) ,1) 100%); širina: 200px; poravnanje teksta: središte )
tekst - ukras : nema ; boja : #fff; padding: 5px veličina fonta: 22px; prikaz : blok ; pozadina: linearni gradijent (desno, rgba (96, 108, 136, 1) 0 %, rgba (63, 76, 107, 1) 100 %); širina: 200px tekst - poravnaj : središte |
U ovom vodiču ćemo kreirati horizontalni css izbornik. Naravno, možete koristiti gotova rješenja, na primjer, unajmiti programere za CMS Made Simple. Ipak, ne tražite lake načine, zar ne? :zlostavljati:
Korak 1 - HTML označavanje
Prvo moramo stvoriti stavke popisa s oznakom za svaku stavku u našem horizontalnom izborniku. Da biste stvorili podizbornik, morate dodati još jedan podizbornik unutar roditeljskog.
Korak 2 — Izrada CSS stilova za Horizontalni izbornik
U početku izbornik izgleda okomito, da bismo to popravili, napisat ćemo neke stilove, urediti uvlake, obrube, boju pozadine, zaokružiti kutove. Popravimo širinu i visinu. Poravnajte stavke izbornika ulijevo pomoću float: lijevo (tako da navigacija dobije horizontalnu strukturu).
Izbornik, .menu ul, .menu li, .menu a ( margina: 0; padding: 0; obrub: nijedan; obris: nijedan; ) .menu (visina: 40px; širina: 505px; pozadina: #4c4e5a; pozadina: - webkit-linear-gradient(vrh, #5c5e6a 0%,#3c3d44 100%); pozadina: -moz-linear-gradient(top, #5c5e6a 0%,#3c3d44 100%); pozadina: -o-linear-gradient( vrh, #5c5e6a 0%,#3c3d44 100%); pozadina: -ms-linear-gradient(top, #5c5e6a 0%,#3c3d44 100%); 100%); -webkit-border-radius: 4px; -moz -border-radius: 4px; border-radius: 4px; ) .menu li (pozicija: relativna; stil liste: nema; float: lijevo; prikaz: blok ; visina: 40px; )
Napišimo neko vrijeme sljedeći stil, koji skriva padajući popis. To će olakšati uređivanje.
Korak 3 - Stil izbornika veze
Zatim pišemo stilove koji dodaju neka osnovna svojstva CSS-a kao što su vrsta fonta, boje, padding i tako dalje. Zatim ćemo dodati sjenu za tekst i prijelaze boja kako bismo stvorili glatki efekt gdje se boja ne mijenja odmah, već u nekom intervalu. Za izradu separatora poveznica, dodajmo obrub s lijeve i desne strane, a zatim uklonimo lijevi obrub na prvoj poveznici i desni obrub na posljednjoj poveznici. Kada zadržite pokazivač iznad izbornika, promijenit će se samo boja.
Izbornik li a ( prikaz: blok; padding: 0 14px; margina: 6px 0; visina linije: 28px; dekoracija teksta: nema; obrub lijevo: 1px čvrst #494942; rub desno: 1px čvrst #4f5058; font- obitelj: Helvetica, Arial, sans-serif; težina fonta: bold; veličina fonta: 13px; boja: #f4f4f4; sjena teksta: 1px 1px 1px rgba(0,0,0,.6); -webkit-transition : boja .3s lakoća ulaska; -moz-prijelaz: boja .3s lakoća ulaska; -o-prijelaz: boja .3s lakoća ulaska; -ms-prijelaz: boja .3s lakoća ulaska- van; prijelaz: boja .3s jednostavnog ulaska; ) .izbornik li:prvo dijete a (obrub-lijevo: nema;) .izbornik li:posljednje-dijete a(obrub-desno: nema; ) .izbornik li: lebdjeti > a ( boja: #9fde63; )
Korak 4 - padajući izbornik
Prije svega, uklonimo ovaj redak koda koji smo dodali u drugom koraku.
Izbornik ul (prikaz: nema;)
Sada ćemo urediti stil za podizbornik. Postavimo podizbornik 40px od vrha i 0px lijevo od stavke izbornika i dodajmo zaobljene kutove na dno. Postavite neprozirnost na nulu i pri lebdenju je promijenite na 1 kako biste stvorili efekt zatamnjenja. Za efekt klizanja gore/dolje, moramo postaviti visinu popisa na 0px kada je padajući izbornik skriven i 36px kada zadržite pokazivač iznad padajućeg izbornika.
Izbornik ul ( pozicija: apsolutna; vrh: 40px; lijevo: 0; neprozirnost: 0; pozadina: #2f3035; -webkit-border-radius: 0 0 4px 4px; -moz-border-radius: 0 0 4px 4px; border- radijus: 0 0 4px 4px; -webkit-transition: neprozirnost .3s lakoća .1s; -moz-transition: neprozirnost .3s lakoća .1s; -o-prijelaz: neprozirnost .3s lakoća .1s; -ms-prijelaz: neprozirnost . 3s ease .1s; prijelaz: neprozirnost .3s ease .1s; ) .menu li:hover > ul (prozirnost: 1; ) .menu ul li (visina: 0; preljev: skriven; padding: 0; -webkit-transition: visina .3s lakoća .1s; -moz-prijelaz: visina .3s lakoća .1s; -o-prijelaz: visina .3s lakoća .1s; -ms-prijelaz: visina .3s lakoća .1s; prijelaz: visina .3s lakoća . 1s; ) .menu li:hover > ul li (visina: 36px; prelijevanje: vidljivo; padding: 0; )
Postavite širinu padajućeg izbornika koji se može kliknuti na 100px. Dodao sam obrub nakon svake veze da ih odvojim. Obrub na posljednjoj poveznici bit će uklonjen.
Izbornik ul li a ( širina: 100px; padding: 4px 0 4px 40px; margina: 0; obrub: nema; obrub-dno: 1px solid #464649; ) .menu ul li:last-child a ( granica: nema; )
Da biste dovršili horizontalni CSS izbornik, morate dodati ikonu za svaki padajući podizbornik. Da bismo to učinili, kreirat ćemo vlastitu klasu za svaki od podizbornika i dodati pozadinsku sliku.
Izbornik a.d (pozadina: url(docs.png) bez ponavljanja 6px centar; ) .izbornik a.m (pozadina: url(bubble.png) bez ponavljanja 6px centar; ) .izbornik a.s (pozadina: url(arrow.png) ne -ponovi 6px središte;)
Zaključak
Uspješno smo kreirali horizontalni padajući izbornik sa i bez CSS3 stila, iako je i to bilo moguće. Ako imate bilo kakvih pitanja, javite mi o tome u komentarima.
(preuzimanja: 395)
Specifikacija
Opis
Označiti