CSS grid layout
This article or section may be written in a style that is too abstract to be readily understandable by general audiences. (October 2017)
|CSS Grid Layout Module Level 1|
CSS Grid Layout Module Level 1
|Status||W3C Candidate Recommendation Draft|
|First published||April 7, 2007|
|Latest version||Level 1|
December 18, 2020
|Preview version||Level 2|
March 11, 2021
|Committee||CSS Working Group|
|Abbreviation||Grid, grid layout|
|Cascading Style Sheets|
In Cascading Style Sheets, CSS grid layout or CSS grid creates complex responsive web design layouts more easily and consistently across browsers. There have been other methods for controlling web page layout methods, such as tables, the box model, and CSS flex box. CSS grid is currently not an official standard (it is a W3C Candidate Recommendation) although it has been adopted by most major browsers.
CSS grid can create more asymmetrical layouts than the previous grid and layout options like CSS floats. It also allows for more standardized code that works across browsers. This is in contrast to relying on specific browser hacks or complicated workarounds.
One issue with exploiting floats in CSS is that if the content gets added to one portion of the page it could disrupt the flow of the page and break the layout. This is due to the varying heights for layout elements. Though CSS flex box supports flexible layouts and provides the flexibility of creating complex layouts, it fails when the need for creating responsive layouts in 2-dimensional space arises.
As of October 2017, Chrome, Firefox, Safari and Edge all support CSS grid without vendor prefixes. IE 10 and 11 support CSS grid but with an outdated specification. On mobile, all modern browsers support CSS grid except for Opera Mini and brave Browser. Web developers targeting older browsers can utilize Modernizr 3.5.0 to detect and gracefully degrade the webpage as needed. 
Utilization in frameworks
Tailwind CSS incorporates CSS grid into its utilities for controlling how elements are sized and placed. However many other current web frameworks do not incorporate CSS grid, such as Bootstrap 4 and Foundation 6.
the fr unit
"Holy grail" layout
The following is an example of the "holy grail" layout:
Table of values
The following is an example of a table of values:
- "CSS Grid Layout Module Level 1 Publication History - W3C". W3C. n.d. Retrieved 2021-04-09.
- Atkins Jr., Tab; J. Etemad, Elika; Atanassov, Rossen; Brufau, Oriol; Mogilevsky, Alex; Cupp, Phil; Mielke, Markus, eds. (2021-12-18). "CSS Grid Layout Module Level 1". W3C. W3C Working Group. Retrieved 2021-04-09.
- Atkins Jr., Tab; J. Etemad, Elika; Atanassov, Rossen; Brufau, Oriol; Mogilevsky, Alex; Cupp, Phil; Mielke, Markus, eds. (2021-03-11). "CSS Grid Layout Module Level 2". W3C. CSS Working Group. Retrieved 2021-04-09.
- Mogilevsky, Alex; Cupp, Phil; Mielke, Markus; Glazman, Daniel, eds. (2011-04-07). "Grid Layout". W3C. CSS Working Group. Retrieved 2021-04-09.
- Mogilevsky, Alex; Mielke, Markus, eds. (2007-09-05). "CSS Grid Positioning Module Level 3". W3C. CSS Working Group. Retrieved 2021-04-09.
- "CSS Grid – Table layout is back. Be there and be square". Google Developers. January 2017. Retrieved 2021-04-09.
- Anderson, Kareem (13 September 2017). "Microsoft's newest browser gets a significant boost with EdgeHTML 16". Retrieved 7 October 2017.
- Protalinski, Emil (9 March 2017). "Chrome 57 arrives with CSS Grid Layout and API improvements | VentureBeat". VentureBeat. Retrieved 7 October 2017.
- "CSS Grid Layout". Can I Use. n.d. Retrieved 2021-04-09.
- Ateş, Faruk (2017-04-13). "Modernizr 3.5.0". Modernizr News. Retrieved 2021-04-09.
- "Grid Column Start / End - Tailwind CSS". Retrieved 2021-04-13.
- Goetter, Raphael (2017-02-16). "Flexbox grids and frameworks". GitHub Gist. Archived from the original on 2017-02-16. Retrieved 2021-04-09.
- Alligator.io (2020-09-03). "CSS Grid Layout: The Fr Unit". DigitalOcean. DigitalOcean. Retrieved 2021-04-09.
- Marcotte, Ethan (2018-07-18). "Fractional. — Ethan Marcotte". Ethan Marcotte. Retrieved 2021-04-09.
- Rendle, Robin (2017-06-12). "An Introduction to the `fr` CSS unit". CSS-Tricks. Retrieved 2021-04-09.