2018-09-30 23:01:58 +01:00
---
id: 5a9036ee38fddaf9a66b5d34
title: Use CSS Grid units to Change the Size of Columns and Rows
challengeType: 0
videoUrl: 'https://scrimba.com/p/pByETK/cvE8phd'
2019-08-05 09:17:33 -07:00
forumTopicId: 301134
2021-01-13 03:31:00 +01:00
dashedName: use-css-grid-units-to-change-the-size-of-columns-and-rows
2018-09-30 23:01:58 +01:00
---
2020-11-27 19:02:05 +01:00
# --description--
You can use absolute and relative units like `px` and `em` in CSS Grid to define the size of rows and columns. You can use these as well:
`fr` : sets the column or row to a fraction of the available space,
`auto` : sets the column or row to the width or height of its content automatically,
`%` : adjusts the column or row to the percent width of its container.
2018-09-30 23:01:58 +01:00
Here's the code that generates the output in the preview:
2019-05-14 01:11:58 -07:00
```css
grid-template-columns: auto 50px 10% 2fr 1fr;
```
2018-09-30 23:01:58 +01:00
This snippet creates five columns. The first column is as wide as its content, the second column is 50px, the third column is 10% of its container, and for the last two columns; the remaining space is divided into three sections, two are allocated for the fourth column, and one for the fifth.
2020-11-27 19:02:05 +01:00
# --instructions--
2018-09-30 23:01:58 +01:00
Make a grid with three columns whose widths are as follows: 1fr, 100px, and 2fr.
2020-11-27 19:02:05 +01:00
# --hints--
2018-09-30 23:01:58 +01:00
2020-11-27 19:02:05 +01:00
`container` class should have a `grid-template-columns` property that has three columns with the following widths: `1fr, 100px, and 2fr` .
2018-09-30 23:01:58 +01:00
2020-11-27 19:02:05 +01:00
```js
assert(
code.match(
/.container\s*?{[\s\S]*grid-template-columns\s*?:\s*?1fr\s*?100px\s*?2fr\s*?;[\s\S]*}/gi
)
);
2018-09-30 23:01:58 +01:00
```
2020-11-27 19:02:05 +01:00
# --seed--
2018-09-30 23:01:58 +01:00
2020-11-27 19:02:05 +01:00
## --seed-contents--
2018-09-30 23:01:58 +01:00
```html
< style >
.d1{background:LightSkyBlue;}
.d2{background:LightSalmon;}
.d3{background:PaleTurquoise;}
.d4{background:LightPink;}
.d5{background:PaleGreen;}
2018-10-08 01:01:53 +01:00
2018-09-30 23:01:58 +01:00
.container {
font-size: 40px;
width: 100%;
background: LightGray;
display: grid;
2020-02-27 07:20:46 -08:00
/* Only change code below this line */
2018-10-08 01:01:53 +01:00
2018-09-30 23:01:58 +01:00
grid-template-columns: auto 50px 10% 2fr 1fr;
2018-10-08 01:01:53 +01:00
2020-02-27 07:20:46 -08:00
/* Only change code above this line */
2018-09-30 23:01:58 +01:00
grid-template-rows: 50px 50px;
}
< / style >
2018-10-08 01:01:53 +01:00
2018-09-30 23:01:58 +01:00
< div class = "container" >
< div class = "d1" > 1< / div >
< div class = "d2" > 2< / div >
< div class = "d3" > 3< / div >
< div class = "d4" > 4< / div >
< div class = "d5" > 5< / div >
< / div >
```
2020-11-27 19:02:05 +01:00
# --solutions--
2018-09-30 23:01:58 +01:00
2020-07-13 18:58:50 +02:00
```html
< style > . container { grid-template-columns : 1 fr 100 px 2 fr ; } < / style >
2018-09-30 23:01:58 +01:00
```