En mycket vanlig trend idag är användningen av en fast navigering, som krymper för att bli mindre påträngande när användaren rullar ner på sidan. I denna handledning kommer jag att visa dig hur du kan uppnå detta genom att använda ZURBs Foundation Top Bar, några anpassade sass och jQuery. Till toppen av det lägger vi till ett par mediafrågor för att göra vår meny mottaglig. Låt oss börja!
Du behöver ett par saker för att få ett bra grepp om denna handledning:
Först ska vi skapa vår arbetsmiljö. Om du inte vet hur man gör det med Compass och Sass, kolla in avsnittet "Komma igång" i Build a Top Bar Off-Canvas Navigation med Foundation 5.
Skapa ditt nya Foundation-projekt och använd kompassklocka
att sammanställa ditt projekt. Vi ska skapa vår egen style.scss
i scss-mappen för våra anpassningar och lite generell styling. Med denna inställning dyker vi in i den allmänna HTML-strukturen, låt oss gå!
Efter att ha startat ett nytt stiftelsesprojekt, gå till index.html
fil och börja med att ta bort allt innehåll mellan kroppstaggarna, med undantag för skriptna strax före stängningskroppen. Lägg sedan till följande rad i din , att importera vår
style.css
.
Därefter lägger vi till en del markering, som rubriken, en huvuddel och sidfoten, och vi lägger också till lite dummyinnehåll för att ge vår sida lite fyllning.
Fancy Foundation Top Bar
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Et, fugl, explicabo architecto på praesentium modi soluta alias vänlig voluptate magnam obcaecati facilis cumque voluptatum impedit eius reiciendis ad minus odio likna sequi molestiae voluptatem commodi aliquam antaganden numquam doloribus libero tempora vitae sed animi. Ratione, quasi iste fugiat debitis molestiae doloremque consequuntur hic delectus molestias repudiandae reprehenderit rerum reiciendis enim aperiam cum ut adipisci veritatis soluta illo praesentium följd voluptate possimus dolorem et officiis perspiciatis commodi kvalificera dig till att ange att du inte är ansvarig för att du är ansvarig för att du ska göra det. Officiis, ducimus, voluptate doloremque nihil rerum följaktligen obcaecati fugiat cum veritatis quidem qui nulla distinctio laborum perspiciatis quia tempora eveniet tempore aliquam pariatur aliquid quibusdam aspernatur quis maiores minus quas culpa reprehenderit id iure optio asperiores? Excepturi, dela på, fördjupa sig på animala harum är en särskild följd av mollitia corporis soluta. Quos, asperiores voluptas totam nesciunt atque iusto commodi. Autem, animi eius odio commodi vitae nöjda möjligheter neque minima obcaecati aspernatur voluptate dolorem consequentur illo vel iste deserunt tempore eaque maxime cum ratione rem odit officia tempora ut recusandae saepe maiores quae repellat debitis atque est praesentium numquam mollitia dolor ipsum modi fuga veniam error perspiciatis quas provident optio similique iure.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Et, fugl, explicabo architecto på praesentium modi soluta alias vänlig voluptate magnam obcaecati facilis cumque voluptatum impedit eius reiciendis ad minus odio likna sequi molestiae voluptatem commodi aliquam antaganden numquam doloribus libero tempora vitae sed animi. Ratione, quasi iste fugiat debitis molestiae doloremque consequuntur hic delectus molestias repudiandae reprehenderit rerum reiciendis enim aperiam cum ut adipisci veritatis soluta illo praesentium följd voluptate possimus dolorem et officiis perspiciatis commodi kvalificera dig till att ange att du inte är ansvarig för att du är ansvarig för att du ska göra det. Officiis, ducimus, voluptate doloremque nihil rerum följaktligen obcaecati fugiat cum veritatis quidem qui nulla distinctio laborum perspiciatis quia tempora eveniet tempore aliquam pariatur aliquid quibusdam aspernatur quis maiores minus quas culpa reprehenderit id iure optio asperiores? Excepturi, dela på, fördjupa sig på animala harum är en särskild följd av mollitia corporis soluta. Quos, asperiores voluptas totam nesciunt atque iusto commodi. Autem, animi eius odio commodi vitae nöjda möjligheter neque minima obcaecati aspernatur voluptate dolorem consequentur illo vel iste deserunt tempore eaque maxime cum ratione rem odit officia tempora ut recusandae saepe maiores quae repellat debitis atque est praesentium numquam mollitia dolor ipsum modi fuga veniam error perspiciatis quas provident optio similique iure.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Et, fugl, explicabo architecto på praesentium modi soluta alias vänlig voluptate magnam obcaecati facilis cumque voluptatum impedit eius reiciendis ad minus odio likna sequi molestiae voluptatem commodi aliquam antaganden numquam doloribus libero tempora vitae sed animi. Ratione, quasi iste fugiat debitis molestiae doloremque consequuntur hic delectus molestias repudiandae reprehenderit rerum reiciendis enim aperiam cum ut adipisci veritatis soluta illo praesentium följd voluptate possimus dolorem et officiis perspiciatis commodi kvalificera dig till att ange att du inte är ansvarig för att du är ansvarig för att du ska göra det. Officiis, ducimus, voluptate doloremque nihil rerum följaktligen obcaecati fugiat cum veritatis quidem qui nulla distinctio laborum perspiciatis quia tempora eveniet tempore aliquam pariatur aliquid quibusdam aspernatur quis maiores minus quas culpa reprehenderit id iure optio asperiores? Excepturi, dela på, fördjupa sig på animala harum är en särskild följd av mollitia corporis soluta. Quos, asperiores voluptas totam nesciunt atque iusto commodi. Autem, animi eius odio commodi vitae nöjda möjligheter neque minima obcaecati aspernatur voluptate dolorem consequentur illo vel iste deserunt tempore eaque maxime cum ratione rem odit officia tempora ut recusandae saepe maiores quae repellat debitis atque est praesentium numquam mollitia dolor ipsum modi fuga veniam error perspiciatis quas provident optio similique iure.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Et, fugl, explicabo architecto på praesentium modi soluta alias vänlig voluptate magnam obcaecati facilis cumque voluptatum impedit eius reiciendis ad minus odio likna sequi molestiae voluptatem commodi aliquam antaganden numquam doloribus libero tempora vitae sed animi. Ratione, quasi iste fugiat debitis molestiae doloremque consequuntur hic delectus molestias repudiandae reprehenderit rerum reiciendis enim aperiam cum ut adipisci veritatis soluta illo praesentium följd voluptate possimus dolorem et officiis perspiciatis commodi kvalificera dig till att ange att du inte är ansvarig för att du är ansvarig för att du ska göra det. Officiis, ducimus, voluptate doloremque nihil rerum följaktligen obcaecati fugiat cum veritatis quidem qui nulla distinctio laborum perspiciatis quia tempora eveniet tempore aliquam pariatur aliquid quibusdam aspernatur quis maiores minus quas culpa reprehenderit id iure optio asperiores? Excepturi, dela på, fördjupa sig på animala harum är en särskild följd av mollitia corporis soluta. Quos, asperiores voluptas totam nesciunt atque iusto commodi. Autem, animi eius odio commodi vitae nöjda möjligheter neque minima obcaecati aspernatur voluptate dolorem consequentur illo vel iste deserunt tempore eaque maxime cum ratione rem odit officia tempora ut recusandae saepe maiores quae repellat debitis atque est praesentium numquam mollitia dolor ipsum modi fuga veniam error perspiciatis quas provident optio similique iure.
© Copyright 2014
Här skapade vi en rubrikavdelning, inklusive , en innehållssektion och en sidfot. Det finns ett par saker att notera:
har en klass .viktig klass
, som vi ska använda för att berätta för jQuery vilket element som ska riktas när vi ska rulla ner..header-fill
. Vi använder det här för att placera ett mellanslag mellan toppen av webbläsaren och innehållsavsnittet, eftersom vår rubrik blir fixad och har ett högre z-index än resten av elementen på sidan.Därefter kommer vi skriva HTML-filen till vår Top Bar. Vi behöver ett rubrikområde för vår logotyp och en sektion med en
att lagra våra menyalternativ. Ta en titt på följande HTML:
Vi har lagt till en
med klassen titel-område
där vi håller vår logotyp Därefter har vi vår med en klass av
top-bar-sektionen
och en
med en klass .höger
, innehållande alla våra listobjekt. Vår bild har ett ID på logo bild
som vi också behöver i vår jQuery senare i denna handledning.
Om vi öppnar vår webbläsare och går till vår indexfil finner vi att vår grundläggande grundstyling gör mycket för oss för att få saker att se bra ut. Vår logotyp passar ändå inte ändå. I nästa steg kommer vi att fixa det här och ge vår huvudnavigering en viss korrekt styling.
För att få de resultat vi önskar behöver vi lite grundläggande styling för våra sektioner, särskilt rubriken och toppfältet. Vi kommer att använda Sass för att få det att hända.
För att börja, ska vi ge alla våra avsnitt några grundläggande styling. Ta en titt på Sass nedan:
$ primärfärg: # ef4523; / * HEADER SECTION ================================================== ====================== / .header-section -webkit-box-shadow: 0 0 5px 0 rgba (0, 0,0,0.4); boxskugga: 0 0 5px 0 rgba (0,0,0,0,4); position: fast; z-index: 999; min bredd: 100%; .contain-to-grid bakgrundsfärg: rgba (255, 255, 255, 0.97); // FILL ANVÄNDAS FÖR HEADER .header-fill background: #fff; höjd: 135px; .tablet-mobile-logo img padding-top: 30px; // ANVÄNDAS FÖR JQUERY ACTION .Padding-on-my-header vaddering: 17px 0.9375rem 62px 0.9375rem; ul.title-area img margin: -5px 0 0 0; .full bredd min-bredd: 100%; p linjehöjd: 3rem; vadderande-botten: 30px; / * CONTENT SECTION ================================================ ============================= * / .Content-avsnitt . Main-innehåll margin-top: 35px; / * FOOTER SECTION =============================================== =============================== * / .footer-avsnitt bakgrund: # 333; minhöjd: 100px; p färg: #fff; marginal-topp: 50px;
Vi använder en primärfärgvariabel här, som vi ska använda för några av Top Bar-styling. Vår rubrik har en fin, subtil boxhugg, så det verkar faktiskt som att det flyter över resten av innehållet. Genom att ställa in sin position för att fixa och göra z-indexet: 999 ser vi till att navigeringen stannar överst i webbläsaren när vi rullar ner och att den stannar över alla andra element på sidan.
Vår .innehålla-to-grid
klassen har en subtil genomskinlig vit färg, så att när vi rullar fram verkar det som om huvudet flyter ovanpå alla övriga element. Vi behöver fortfarande fixa den menyn, så låt oss ta hand om det där nästa.
Nu ska vi lägga till stilen för att ge vår Top Bar en fin, snygg look. Du kan också justera några av inställningarna på den övre fältet i _settings.scss, men jag ska visa dig hur du gör det här med våra egna överstyrningar. Sass nedan förklarar vad som händer där:
/ * TOPBAR NAVGATION =============================================== ============================== * / .top-bar bakgrund: none; vaddering: 45px 0.9375rem 90px 0.9375rem; övergång: alla 0,5 s lätthet 0.1s; // LOGO JUSTERING ul.title-area img margin: -10px 0 0 0; .stångsektion ul bakgrund: ingen; // MENU ITEM STYLES li a: not (. Knapp), li.active a: not (.knapp) bakgrund: none; linjehöjd: 30px; fontstorlek: 12px; vaddering: 0; marginal: 5px 0 0 0; text-transform: stor bokstav; // MENU ITEM HOVERS li a: inte (.knapp): svep bakgrund: ingen; gränsbotten: 2px solid $ primärfärg; färg: # 222; // MENY ITEM AKTIV li.active a: not (.button) border-bottom: 2px solid $ primary-color; färg: # 222; &: sväva bakgrund: ingen; li margin-left: 30px; en färg: # 888; // DROPDOWN MENU. Toppfältet ul li: svävar: inte (.has-form)> a färg: # 333; .stångsektion li ul.dropdown background: #fff; gränsen: 1px solid #ddd; färg: # 888; li border-bottom: 1px solid #ddd; marginal: 0; vaddering: 5px 15px 5px 15px; .fältet ovanför. li a: not (.button): svävar, .tangstångsdel li ul.dropdown li a: not (.knapp) bakgrund: none; färg: # 222; gränsbotten: ingen; vaddering: 20px -4px 40px 45px; .stångsektion ul.dropdown li: svävar: inte (.has-form)> a: inte (.knapp) bakgrund: ingen; färg: # 222; // DROPDOWN PIL .has-dropdown> a: efter border-color: rgba (0, 0, 0, 0.5) transparent transparent; marginal-topp: -5px;
Notera: Vi ska flytta .padding-on-my-header
klass under Top Bar reglerna. Detta är nödvändigt för att polstringen ska åsidosätta den i Top Bar.
Vi har lagt till en del vadderingar till vår toppraden och vi har ställt en övergång på 0.5, lätthet 0.1s. Detta kommer att ge en smidig övergångseffekt när vår jQuery sparkar in. Bakgrunden är inställd på ingen, så att vår rubrik har den lätt genomskinliga färgen som vi gav vår .innehålla-to-grid
klass. Resten är en del grundläggande styling för Top Bar menyalternativ, dropdowns, svep och aktiva stater. Ingenting för överdriven, men det gav oss ett rent resultat genom att lägga till något vadderande och vitt utrymme.
Låt oss ta en titt på vad vi har hittills. Det börjar verkligen se ut som någonting! Men vår meny är fortfarande lite stor för när vi rullar ner sidan. Det är där vår .padding-on-my-header
klasssteg i.
Låt oss använda lite jQuery magi för att lägga till .padding-on-my-header
klass på rullning och byta logotypen till en mindre storlek.
Vi ska skapa en init.js-fil för att hämta vår jQuery-kod. Lägg den i din / js-mapp och ta med följande rad längst ner i din indexfil, precis före stängningskroppen, för att inkludera manuset: