I mange år har CSS floats været en finicky, men nødvendig, komponent i oprettelsen af website layouts. Hvis dit design krævede flere kolonner, vendte du til flyder. Problemet med denne metode er, at på trods af den utrolige opfindsomhed, som webdesignere / -udviklere har vist for at oprette komplekse site layouts, var CSS-floats aldrig rigtig beregnet til at blive brugt på denne måde.
Mens floats og CSS positionering er sikker på at have et sted i webdesign i mange år fremover, giver nyere layoutteknikker, herunder CSS Grid og Flexbox, nu webdesignere nye måder at oprette deres layout på. En anden ny layoutteknik, der viser mange muligheder er CSS Multiple Columns.
CSS-kolonner har eksisteret i et par år nu, men manglende support i ældre browsere (primært ældre versioner af Internet Explorer) har holdt mange web-fagfolk fra at bruge disse stilarter i deres produktionsarbejde.
I slutningen af støtten til de ældre versioner af IE eksperimenterer nogle webdesignere nu med nye CSS-layoutmuligheder, inklusive CSS-kolonner, og finder, at de har så meget mere kontrol med disse nye tilgange, end de gjorde med floats.
Grundlæggende om CSS-kolonner
Som navnet antyder, giver CSS flere kolonner (også kendt som CSS3 multi-column layout) dig mulighed for at opdele indhold i et angivet antal kolonner. De mest grundlæggende CSS-egenskaber, du vil bruge, er:
- kolonne-count
- kolonne-kløften
For kolonneantal angiver du antallet af kolonner, du vil have. Søjlehullet ville være tarmene eller afstanden mellem disse søjler. Browseren vil tage disse værdier og opdele indholdet jævnt i antallet af kolonner, du angiver.
Et almindeligt eksempel på CSS flere kolonner i praksis ville være at opdele en blok tekstindhold i flere kolonner, svarende til hvad du ville se i en avisartikel. Sig, at du har følgende HTML-markering (bemærk at jeg for eksempel kun sætter starten på et afsnit, mens det i praksis sandsynligvis vil være flere afsnit af indholdet i denne markering):
Hvis du så skrev disse CSS-stilarter:
.content {-moz-column-count: 3; -webkit-kolonneantal: 3; kolonneantal: 3; -moz-kolonne-mellemrum: 30px; -webkit-kolonne-mellemrum: 30px; kolonne-gap: 30px; }
Denne CSS-regel ville dele divisionen "indhold" i 3 ens kolonner med et hul på 30 pixels mellem dem. Hvis du ønskede to kolonner i stedet for 3, ville du blot ændre den værdi, og browseren ville beregne de nye bredder af disse kolonner for at opdele indholdet jævnt. Bemærk, at vi først bruger de sælger-præfikserede egenskaber først, efterfulgt af de ikke-præfikserede erklæringer.
Så nemt som det er, er brugen heraf på denne måde tvivlsomt for brug af hjemmesiden. Ja, du kan dele en masse indhold i flere kolonner, men det er måske ikke den bedste læseoplevelse for internettet, især hvis højden af disse kolonner falder under skærmens "fold".
Læsere skulle så rulle op og ned for at kunne læse hele indholdet. Alligevel er chefen for CSS-kolonner lige så nem som du ser her, og den kan bruges til at gøre så meget mere end bare at dele indholdet i nogle afsnit - det kan faktisk bruges til layout.
Layout med CSS-kolonner
Sig, at du har en webside med et indholdsområde, der har 3 kolonner indhold. Dette er et meget typisk websted layout, og for at opnå disse 3 kolonner, ville du normalt flyde de divisioner, der er i. Med CSS multiple-kolonner er det så meget lettere.
Her er nogle eksempler HTML:




