2018-09-30 23:01:58 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								---
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								id: 5a94fe5469fb03452672e461
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								title: Create Flexible Layouts Using auto-fill
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								challengeType: 0
							 
						 
					
						
							
								
									
										
										
										
											2020-05-21 17:31:25 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								isHidden: false
							 
						 
					
						
							
								
									
										
										
										
											2018-09-30 23:01:58 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								videoUrl: 'https://scrimba.com/p/pByETK/cmzdycW'
							 
						 
					
						
							
								
									
										
										
										
											2019-08-05 09:17:33 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								forumTopicId: 301126
							 
						 
					
						
							
								
									
										
										
										
											2018-09-30 23:01:58 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								---
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								## Description
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< section  id = 'description' > 
							 
						 
					
						
							
								
									
										
										
										
											2019-02-25 17:50:00 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								The repeat function comes with an option called < dfn > auto-fill< / dfn > . This allows you to automatically insert as many rows or columns of your desired size as possible depending on the size of the container. You can create flexible layouts when combining < code > auto-fill< / code >  with < code > minmax< / code > , like this:
							 
						 
					
						
							
								
									
										
										
										
											2019-05-14 01:11:58 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```css
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								repeat(auto-fill, minmax(60px, 1fr));
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-09-30 23:01:58 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								When the container changes size, this setup keeps inserting 60px columns and stretching them until it can insert another one.
							 
						 
					
						
							
								
									
										
										
										
											2019-03-22 22:02:12 +08:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								< strong > Note:< / strong >  If your container can't fit all your items on one row, it will move them down to a new one.
							 
						 
					
						
							
								
									
										
										
										
											2018-09-30 23:01:58 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< / section > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								## Instructions
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< section  id = 'instructions' > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								In the first grid, use < code > auto-fill< / code >  with < code > repeat< / code >  to fill the grid with columns that have a minimum width of < code > 60px< / code >  and maximum of < code > 1fr< / code > . Then resize the preview to see auto-fill in action.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / section > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								## Tests
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< section  id = 'tests' > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```yml
							 
						 
					
						
							
								
									
										
										
										
											2018-10-04 14:37:37 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								tests:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  -  text: < code > container</ code >  class should have a < code > grid-template-columns</ code >  property with < code > repeat</ code >  and < code > auto-fill</ code >  that will fill the grid with columns that have a minimum width of < code > 60px</ code >  and maximum of < code > 1fr</ code > .
							 
						 
					
						
							
								
									
										
										
										
											2019-07-24 03:54:35 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    testString: assert(code.match(/.container\s*?{[\s\S]*grid-template-columns\s*?:\s*?repeat\s*?\(\s*?auto-fill\s*?,\s*?minmax\s*?\(\s*?60px\s*?,\s*?1fr\s*?\)\s*?\)\s*?;[\s\S]*}/gi));
							 
						 
					
						
							
								
									
										
										
										
											2018-09-30 23:01:58 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / section > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								## Challenge Seed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< section  id = 'challengeSeed' > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  id = 'html-seed' > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```html
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< style > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .item1{background:LightSkyBlue;}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .item2{background:LightSalmon;}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .item3{background:PaleTurquoise;}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .item4{background:LightPink;}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .item5{background:PaleGreen;}
							 
						 
					
						
							
								
									
										
										
										
											2018-10-08 01:01:53 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-09-30 23:01:58 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								  .container {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    font-size: 40px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    min-height: 100px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    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: repeat(3, minmax(60px, 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: 1fr 1fr 1fr;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    grid-gap: 10px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
									
										
										
										
											2018-10-08 01:01:53 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-09-30 23:01:58 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								  .container2 {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    font-size: 40px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    min-height: 100px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    width: 100%;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    background: Silver;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    display: grid;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    grid-template-columns: repeat(3, minmax(60px, 1fr));
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    grid-template-rows: 1fr 1fr 1fr;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    grid-gap: 10px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / style > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "container" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item1" > 1< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item2" > 2< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item3" > 3< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item4" > 4< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item5" > 5< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "container2" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item1" > 1< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item2" > 2< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item3" > 3< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item4" > 4< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item5" > 5< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / section > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								## Solution
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< section  id = 'solution' > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-02-25 17:50:00 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								```html
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< style > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .item1{background:LightSkyBlue;}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .item2{background:LightSalmon;}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .item3{background:PaleTurquoise;}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .item4{background:LightPink;}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .item5{background:PaleGreen;}
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .container {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    font-size: 40px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    min-height: 100px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    width: 100%;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    background: LightGray;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    display: grid;
							 
						 
					
						
							
								
									
										
										
										
											2020-02-27 07:20:46 -08:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    /* Only change code below this line */
							 
						 
					
						
							
								
									
										
										
										
											2019-02-25 17:50:00 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    grid-template-columns: repeat(auto-fill, minmax(60px, 1fr));
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    
							 
						 
					
						
							
								
									
										
										
										
											2020-02-27 07:20:46 -08:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    /* Only change code above this line */
							 
						 
					
						
							
								
									
										
										
										
											2019-02-25 17:50:00 -06:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    grid-template-rows: 1fr 1fr 1fr;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    grid-gap: 10px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  .container2 {
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    font-size: 40px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    min-height: 100px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    width: 100%;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    background: Silver;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    display: grid;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    grid-template-columns: repeat(3, minmax(60px, 1fr));
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    grid-template-rows: 1fr 1fr 1fr;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    grid-gap: 10px;
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  }
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / style > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "container" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item1" > 1< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item2" > 2< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item3" > 3< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item4" > 4< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item5" > 5< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< div  class = "container2" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item1" > 1< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item2" > 2< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item3" > 3< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item4" > 4< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								  < div  class = "item5" > 5< / div > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / div > 
							 
						 
					
						
							
								
									
										
										
										
											2018-09-30 23:01:58 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								< / section >