Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Sigurnost
  • Kreiranje horizontalnog menija. Kako centrirati horizontalni meni

Kreiranje horizontalnog menija. Kako centrirati horizontalni meni

Habr, zdravo!

Na Codepen-u postoji mnogo dobrih rješenja različitih stručnjaka i vjerujem da najbolje od njih treba sakupiti na jednom mjestu. Stoga sam prije 2 godine počeo da spremam zanimljive skripte o raznim temama na svom računaru.

Objavljivao sam ih u grupi proizvoda cloud IDE mr. Gefest, to su bili sklopovi od 5-8 rješenja. Ali sada sam počeo da skupljam 15-30 skripti u različitim temama (dugmad, meniji, opisi alata i tako dalje).

Ovako velike setove treba pokazati većem broju stručnjaka. Stoga ih objavljujem na Habru. Nadam se da će vam biti od koristi.

U ovom pregledu ćemo pogledati menije na više nivoa.

Ravna horizontalna navigacija

Prekrasna navigacijska traka sa podmenijem koji se glatko pojavljuje. Kod je dobro strukturiran, koristi se js. Sudeći po korištenim funkcijama, radi u ie8+.
http://codepen.io/andytran/pen/kmAEy

Zaglavlje za navigaciju materijala s poravnatim padajućim izbornikom

Responzivna traka veza sa podmenijem u dvije kolone. Sve se radi u css i html. Primijenjeni css3 selektori koji nisu podržani u ie8.
http://codepen.io/colewaldrip/pen/KpRwgQ

Padajući meni Glatke harmonike

Moderan vertikalni meni sa elementima koji se glatko otvaraju. Korišteni prijelaz, transformacija js koda.
http://codepen.io/fainder/pen/AydHJ

Pure CSS Dark Inline Navigacijski meni

Tamna vertikalna navigaciona traka sa ikonama ikona. javascript je primijenjen. U ie8 će najvjerovatnije raditi bez animacije.
http://codepen.io/3lv3n_snip3r/pen/XbddOO

Čisti CSS3 Mega padajući meni sa animacijom

Moderan meni sa dva izlazna formata: horizontalnim i vertikalnim. Koriste se ikone i css3 animacija. U ie8 će definitivno izgledati užasno, ali u drugim pretraživačima je sve super.
Link do vertikale: http://codepen.io/rizky_k_r/full/sqcAn/
Link na horizontalu: http://codepen.io/rizky_k_r/pen/xFjqs

CSS3 padajući meni

Horizontalni meni sa velikim stavkama i padajućom listom veza. Čist i minimalistički kod bez js-a.
http://codepen.io/ojbravo/pen/tIacg

Jednostavan Pure CSS padajući meni

Jednostavan, ali moderan horizontalni meni. Font-awesome se koristi. Sve radi na css i html, bez js-a. Radit će u ie8.
http://codepen.io/Responsive/pen/raNrEW

Bootstrap 3 mega padajući meni

Odlično rješenje za online trgovine. Prikazuje više nivoa kategorija i velike slike (kao što su artikli na zalihama). Zasnovan je na boostrap 3.
http://codepen.io/organizedchaos/full/rwlhd/

Flat Navigation

Elegantna navigaciona traka sa glatkim podmenijima. U starijim pretraživačima će se prikazati sa problemima.
http://codepen.io/andytran/pen/YPvQQN

3D ugniježđena navigacija

Horizontalni meni sa vrlo cool animacijom bez js-a!
http://codepen.io/devilishalchemist/pen/wBGVor

Responzivni mega meni - navigacija

Horizontalni responzivni meni. Izgleda dobro, ali mobilna verzija je malo loša. Korišteni css, html i js.
http://codepen.io/samiralley/pen/xvFdc

Čisti CSS3 meni

originalni meni. Sa jednostavnim i čistim kodom bez js-a. Koristite za "vau" efekte.
http://codepen.io/Sonic/pen/xJagi

Potpuni CSS3 padajući meni

Šareni padajući meni sa jednim nivoom ugnježđenja. Koriste se ikone iz font-awesome, html i css.
http://codepen.io/daniesy/pen/pfxFi

Samo Css3 padajući meni

Prilično dobar horizontalni meni sa tri nivoa ugnježđenja. Radi bez js-a.
http://codepen.io/riogrande/pen/ahBrb

Padajući meniji

Minimalistički meni sa originalnim efektom izgleda ugniježđene liste stavki. Drago mi je što je i ovo rješenje bez javascripta.
http://codepen.io/kkrueger/pen/qfoLa

Čisti CSS padajući meni

Primitivno ali efikasno rešenje. Samo css i html.
http://codepen.io/andornagy/pen/xhiJH

Povucite meni - Koncept interakcije menija

Zanimljiv koncept menija za mobilni telefon. Ovo još nisam vidio. Koristi se html, css i javascript.
http://codepen.io/fbrz/pen/bNdMwZ

Napravite jednostavan padajući meni

Čist i jednostavan kod, bez js-a. Definitivno će raditi u ie8.
http://codepen.io/nyekrip/pen/pJoYgb

Čisti CSS padajući meni

Rješenje nije loše, ali se koristi previše klasa. Drago mi je da nema js.
http://codepen.io/jonathlee/pen/mJMzgR

Padajući meni

Lep vertikalni meni sa minimalnim javascript kodom. jQuery se ne koristi!
http://codepen.io/MeredithU/pen/GAinq

CSS 3 padajući meni

Horizontalni meni s dodatnim natpisima može dobro ukrasiti vašu stranicu. Kod je jednostavan i jasan. Javascript se ne primjenjuje.
http://codepen.io/ibeeback/pen/qdEZjR

Predivno rješenje sa puno koda (html, css i js). Postoje 3 formata podmenija. Za online trgovine rješenje je dobro prilagođeno.
http://codepen.io/martinridgway/pen/KVdKQJ

Padajući meni CSS3 (posebno rešenje)!

Tamni horizontalni meni sa trinaest (13) opcija za animaciju! Svakako preporučujem za čitanje, korisno u svakodnevnom životu.
http://codepen.io/cmcg/pen/ofFiz

P.S.
Nadam se da ste uživali u sklapanju 23 rješenja. Ako ih želite nastaviti čitati, ispunite anketu u nastavku.
Sve ugodan rad.

Ako vaša web stranica nije ograničena na jednu web stranicu, razmislite o dodavanju navigacijske trake (menija). Izbornik je dio web stranice dizajniran da pomogne posjetitelju da se kreće po stranici. Svaki meni je lista linkova koji vode do internih stranica sajta. Najlakši način da dodate navigacijsku traku na svoju web lokaciju je kreiranje menija koristeći CSS i HTML.

Vertikalni meni

Prvi korak u kreiranju vertikalnog menija je kreiranje liste sa nabrajanjem. Također moramo biti u mogućnosti identificirati listu, pa ćemo joj dodati id atribut sa id "navbar". Svaki element

  • naša lista će sadržavati jedan link:

    Naš sljedeći zadatak je resetiranje zadanih stilova liste. Moramo ukloniti vanjske i unutrašnje uvlake sa same liste i markere sa stavki liste. Zatim postavite željenu širinu:

    #navbar ( margina: 0; padding: 0; tip-stil liste: nijedan; širina: 100px; )

    Sada je vrijeme za stiliziranje samih veza. Dodat ćemo im boju pozadine, promijeniti parametre teksta: boju, veličinu i zasićenost fonta, ukloniti podcrtanu crtu, dodati male uvlake i redefinirati prikaz element iz inline u blok. Dodatno, lijevi i donji okviri su dodani na stavke liste.

    Najvažniji dio naših promjena je redefiniranje inline elemenata u blok elemente. Sada naše veze zauzimaju cijeli raspoloživi prostor stavki liste, što znači da više ne moramo preći preko tačnog teksta da bismo pratili vezu.

    #navbar a (boja pozadine: #949494; boja: #fff; padding: 5px; dekoracija teksta: nema; font-weight: bold; border-left: 5px čvrsta #33ADFF; display: block; ) #navbar li ( border-left: 10px solid #666; border-bottom: 1px solid #666; )

    Kombinirali smo sav gornji kod u jedan primjer, sada klikom na dugme probaj možete otići na stranicu sa primjerom i vidjeti rezultat:

    Ime dokumenta

    Pokušajte »

    Kada pomerite kursor miša preko stavke menija, njen izgled se može promeniti, privlačeći pažnju korisnika na sebe. Možete stvoriti takav efekat koristeći :hover pseudo-klasu.

    Vratimo se na naš raniji primjer vertikalnog menija i dodajmo sljedeće pravilo u stilove:

    #navbar a:hover (boja pozadine: #666; granica lijevo: 5px čvrsta #3333FF; ) Pokušajte »

    Horizontalni meni

    U prethodnom primjeru pogledali smo vertikalnu navigacijsku traku, koja se najčešće nalazi na web stranicama lijevo ili desno od područja glavnog sadržaja. Međutim, meniji sa navigacijskim vezama također se često nalaze horizontalno na vrhu web stranice.

    Horizontalni meni se može kreirati stilizovanjem obične liste. Prikaz svojstva za elemente

  • trebate dodijeliti vrijednost inline tako da se stavke liste nalaze jedna za drugom.

    Da biste rasporedili stavke menija horizontalno, prvo kreirajte listu sa nabrajanjem sa vezama:

    Hajde da napišemo nekoliko pravila za našu listu koja resetuju stil koji se podrazumevano koristi za liste i redefiniše stavke liste iz bloka u inline:

    #navbar ( margina: 0; padding: 0; tip-stil liste: nijedan; ) #navbar li ( display: inline; ) Pokušajte »

    Sada samo trebamo definirati stil za naš horizontalni meni:

    #navbar ( margina: 0; padding: 0; tip-stil liste: nijedan; granica: 2px čvrsta #0066FF; radijus granice: 20px 5px; širina: 550px; poravnanje teksta: centar; boja pozadine: #33ADFF; ) #navbar a ( boja: #fff; padding: 5px 10px; text-decoration: nema; font-weight: bold; display: inline-block; širina: 100px; ) #navbar a:hover ( border-radius: 20px 5px ; boja pozadine: #0066FF; ) Pokušajte »

    Padajući meni

    Meni koji ćemo kreirati imat će glavne navigacijske veze smještene u horizontalnoj navigacijskoj traci i podstavke koje će biti prikazane samo kada se kursor miša pređe preko stavke menija kojoj ove podstavke pripadaju.

    Prvo treba da kreiramo HTML strukturu našeg menija. Postavićemo glavne navigacijske veze u listu sa nabrajanjem:

    Postavićemo podstavke u posebnu listu tako što ćemo ih ugniježditi u element

  • , koji sadrži roditeljsku vezu u odnosu na podstavke. Sada imamo jasnu strukturu naše buduće navigacijske trake:

    Pokušajte »

    Sada počnimo pisati CSS kod. Prvi korak je da sakrijete listu sa podstavkama sa prikazom: nema; deklaracija kako se ne bi stalno pojavljivale na web stranici. Da bismo prikazali podstavke, to nam je potrebno kada pređemo mišem iznad elementa

  • lista je ponovo konvertovana u blok element:

    #navbar ul ( display: none; ) #navbar li:hover ul ( display: block; )

    Uklanjamo podrazumevane uvlake i markere sa obe liste. Elemente liste pravimo sa plutajućim vezama za navigaciju, formirajući horizontalni meni, ali za elemente liste koji sadrže podstavke postavljamo float: none; tako da se pojavljuju jedno ispod drugog.

    #navbar, #navbar ul ( margina: 0; padding: 0; tip-stil liste: nijedan; ) #navbar li ( float: lijevo; ) #navbar ul li ( float: nema; )

    Zatim, moramo biti sigurni da naš padajući meni podmenija ne gura sadržaj ispod navigacijske trake prema dolje. Da bismo to uradili, postavićemo stavke liste na poziciju: relativno; , ali lista koja sadrži podstavke pozicija: apsolutna; i dodajte top svojstvo sa vrijednošću od 100% tako da se apsolutno pozicionirani podmeni pojavi tačno ispod linka.

    #navbar ul ( prikaz: nema; pozicija: apsolutna; vrh: 100%; ) #navbar li ( float: lijevo; pozicija: relativna; ) #navbar (visina: 30px; ) Pokušajte »

    Visina za nadređenu listu je namjerno dodana, budući da pretraživači ne smatraju plutajući sadržaj sadržajem elementa, bez dodavanja visine, pretraživač će zanemariti našu listu i sadržaj koji slijedi nakon liste će se omotati oko našeg menija.

    Sada samo trebamo stilizirati obje naše liste i naš padajući meni će biti spreman:

    #navbar ul ( display: none; background-color: #f90; position: absolute; top: 100%; ) #navbar li:hover ul (display: block; ) #navbar, #navbar ul ( margin: 0; padding: 0; tip-stila liste: nema; ) #navbar (visina: 30px; boja pozadine: #666; padding-left: 25px; min-width: 470px; ) #navbar li (float: lijevo; položaj: relativan; visina: 100%; ) #navbar li a (prikaz: blok; padding: 6px; širina: 100px; boja: #fff; text-decoration: nema; text-align: center; ) #navbar ul li (float: nema; ) #navbar li:hover (boja pozadine: #f90; ) #navbar ul li:hover (boja pozadine: #666; )

    Pozdrav dragi čitaoci mog bloga! Današnji članak će biti vrlo koristan za početnike. Od danas ćemo dizajnirati jednostavan horizontalni meni. Prije nego što pređemo direktno na izgled, želim reći nekoliko riječi o tome zašto sam odlučio odabrati ovu temu za članak.

    U stvari, sve je prilično jednostavno, kada sam razmišljao o temi sljedeće lekcije za stranicu, počeo sam se prisjećati i analizirati svoje iskustvo u proučavanju layouta, sa čime sam se morao suočiti u početnoj fazi da postanem ja kao layout dizajner, što mi je bilo najnerazumljivije pri proučavanju ove oblasti itd. Sva ova pitanja sam sebi postavio kako bih bolje razumio šta bi moglo biti interesantno osobi koja započinje svoj put kao layout dizajner. A lično, čim sam počeo da učim layout, najviše od svega imao sam pitanja o izgledu raznih menija, posebno kada su u pitanju višeslojni meniji. I tako ćemo danas pričati o meniju, tačnije o horizontalnom meniju. Pa počnimo!

    Započnimo raspored našeg horizontalnog menija!

    Kao što verovatno pretpostavljate, prva stvar koju treba da uradimo je da kreiramo html stranicu sa standardnim oznakama i u nju uključimo datoteku stila. Neću se zadržavati na ovom koraku u detalje, jer se ipak nadam da niste toliko početnici da vam detaljno kažete šta su tijelo i glava i kako su uključeni stilovi. Samo da kažem da ću pored stilova za naš meni napisati najjednostavniji reset u css fajl kako bih resetovao stilove i postigao isti prikaz uvlaka u svim pretraživačima. Ovako izgleda moj najjednostavniji reset:

    Neću još ništa reći o stilovima nuliranja, pošto je to zapravo tema za drugi članak, jedino što trebate znati o gornjem kodu je da će zahvaljujući ovom kodu svi elementi stranice koje ćemo napisati imati svoje margine i padding, to moramo učiniti tako da naša stranica izgleda isto u svim pretraživačima.

    Dakle, šta imamo u ovoj fazi? Imamo html stranicu sa standardnim oznakama:

    Horizontalni meni

    I imamo stilski fajl povezan sa ovom stranicom (imam style.css), sa sledećim sadržajem:

    Sljedeći korak je kreiranje html oznake za naš meni.

    Kreiranje oznaka za meni

    U našem označavanju koristit ćemo novu oznaku

  • Top Related Articles