KNACSS v6 est en préparation, pour l’instant sa sortie est prévue pour mars 2017, et de très nombreuses améliorations et modifications sont prévues (n’hésitez pas d’ailleurs à participer à ce projet sur Github).
Parmi ces nouveautés importantes, un nouveau système de grille est à l’étude.
La version beta de cette grille est d’ores et déjà visible et testable ici :
http://codepen.io/raphaelgoetter/pen/EyvbqA?editors=1100
Fonctionnalités préservées par rapport à la v5 :
- La complexité du système doit rester… simple !
- Le positionnement demeure Flexbox (encore un peu tôt pour passer à Grid Layout) et le principe est de pouvoir rester très simple par défaut (contrairement à des grilles complexes telles que Bootstrap)
- Possibilité de préciser le nombre de colonnes en taille d’écran « small » à l’aide du suffixe
-small-X
(X colonnes) - Possibilité d’appliquer une gouttière entre les éléments
- Possibilité d’offsets (pull / push)
- Possibilité de réordonner les éléments (au début / à la fin)
- Possibilité de réaliser ses propres grilles multi-colonnes via un mixin Sass. ex.
.o-grid-perso { @include grid(4, 3rem); }
Fonctionnalités nouvelles :
- Double système de grille automatique selon le nommage choisi :
- Mono-ligne : possibilité par défaut d’émuler l’objet « autogrid » :
.grid
affiche sur une ligne autant d’enfants que nécessaires (et de taille identique) - Multi-ligne : possibilité de passer en multi-lignes dès que l’on ajoute un suffixe numéroté (ex.
.grid-2
,.grid-3
….grid-12
)
- Mono-ligne : possibilité par défaut d’émuler l’objet « autogrid » :
- « Mobile-first » : par défaut une grille sera disposée sur une seule colonne, et ne s’active que lorsque l’écran dépasse le breakpoint
$tiny
- Possibilité de définir individuellement la taille de chaque enfant si besoin (ex.
.one-half
,.one-third
,.one-quarter
,.two-thirds
, etc.) - Possibilité d’inverser toute la grille grâce au suffixe
--reverse
Fonctionnalités abandonnées par rapport à la v5 :
- Suppression des grilles de largeurs inégales « uneven grids » (ex.
.grid-2-1
,.grid-4-1
) - Suppression de la classe
.grid-item-double
devenue inutile - La gouttière était appliquée par défaut en v5 et ne l’est plus en v6. Elle devient à présent une fonctionnalité à activer avec une classe
.has-gutter
Tous les avis et arguments sont les bienvenus (ainsi que les éventuels bugs que vous auriez pu rencontrer)