Masonry stil layouter push gränserna för kreativa layout tekniker. Jag älskar personligen hur kapabel de visar sig vara på att maximera effektiviteten hos gallerier som innehåller föremål med varierande höjder. Varje bit av skärmutrymme används och resultatet kan vara ordentligt fascinerande.
Idag kommer vi att dyka in i konceptet, idéer och populära tekniker som för närvarande förekommer i masonry-layouter. Vi lär oss tre olika metoder för att dra av en murverkslayout, diskutera insatserna och varje utseende och se till att resultatet är vackert responsivt och reflows baserat på webbläsarens bredd.
Vad är en Masonry Layout?
När du flyter objekt i CSS, organiserar webbläsaren element först horisontellt sedan vertikalt. När vi fyller en behållare med en massa likformade föremål och flyter dem till vänster, får vi ett bra galler av bilder.
Om objekten har variabla höjder är resultaten dock mycket svårare att förutsäga. Istället för ett snyggt tätt nät får vi något som tenderar att vara ganska utspridda.
Den uppenbara frågeställningen här är hur man drar av ett fint tätt galler som med föremål som har varierande höjder. Det är ett ganska intressant ämne och olika utvecklare har kommit upp på flera sätt att gå om det. Låt oss ta en titt på tre av de nuvarande bästa lösningarna.
För att gå ett steg längre, kommer vi att se till att alla tre lösningarna är mottagliga, vilket betyder att gallret kommer att flyta när fönstret förändras.
jQuery Masonry
jQuery Masonry är den mest populära lösningen för att dra av den här typen av layout. Det använder några ganska snygga JavaScript för att återlämna en serie av divs.
Att lägga Masonry i praktiken är ganska lätt, allt du behöver är en behållare som har en serie av divs som du vill arrangera masonry stil. Du kan placera allt du vill ha inom divs, i det här fallet slängde jag i några platshållare bilder.
När du har det i ordning, kasta i jQuery och jQuery Masonry. Då behöver du skapa en enkel funktion som identifierar din behållare och riktar sig till den klass som vi använde för våra Masonry-bildsegment. Här är ett grundläggande exempel: