Certains vont adorer, d'autres détester, toujours est-il qu'il est là :
Code css : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | body { grid-kiss: "+-------------------------------+ " "| header ^ | 120px" "+-------------------------------+ " " " "+-- 30% ---+ +--- auto --------+ " "| .sidebar | | main | auto " "+----------+ +-----------------+ " " " "+-------------------------------+ " "| v | 60px " "| > footer < | " "+-------------------------------+ " } |
Résultat:
Pour ceux qui ne connaissent pas PostCSS, il s'agit d'un parseur et d'un processeur de CSS, à la manière des préprocesseurs SASS/Less/Stylus, mais en beaucoup plus modulaire. C'est un peu l'équivalent de Babel en CSS.
Ce plugin de PostCSS vous permet de "dessiner" en ASCII-Art les layouts que vous souhaitez pour vos éléments, et convertira cela en un ensemble de règles CSS standard équivalentes. Il utilise de base la spécification Grid Layout, en cours d'implémentation dans les navigateurs et ne fonctionnant actuellement que sur Chrome Canary et Firefox Nightly. Mais il dispose d'une option fallback utilisant position:absolute et calc() pour amener le support à la majorité des navigateurs, y compris Internet Explorer 9 et +.
La syntaxe est aussi puissante que permissive et vous permettra de réaliser très simplement des layouts complexes, mélangeant des dimensions fixes et relatives.
Vous pouvez tester le plugin directement sur votre navigateur ici
Pour la documentation, le suivi du projet et pour mettre une 🌟, cela se passe sur Github: https://github.com/sylvainpolletvill...tcss-grid-kiss
J'attends avec impatience vos réactions, qui ont été jusqu'ici très partagées, entre les super-enthousiastes et les sceptiques.
Que pensez-vous de cette approche visuelle ?
Avez-vous des suggestions d'amélioration ?