├── 10. Checkerboard-layout ├── start.css ├── finished.css ├── start.html └── finished.html ├── 2. Centered-Content ├── start.css ├── finished.css ├── start.html └── finished.html ├── 3. Reordering-Content ├── start.css ├── start.js ├── finished.js ├── finished.css ├── start.html └── finished.html ├── 4. Responsive-Navbar ├── start.css ├── finished.css ├── start.html └── finished.html ├── 5. Asymetric-Dashboard ├── start.css ├── finished.css ├── start.html └── finished.html ├── 1. responsive-3-column-grid ├── start.css ├── finished.css ├── start.html └── finished.html ├── 6. Asymetric-Gallery-Layout ├── start.css ├── finished.css ├── start.html └── finished.html ├── 7. Responsive-Card-Gallery ├── start.css ├── start.js ├── start.html ├── finished.html ├── finished.css └── finished.js ├── 8. Responsive-2-column-with-footer ├── start.css ├── finished.css ├── start.html └── finished.html ├── 9. Responsive-2-column-with-footer (grid areas) ├── start.css ├── finished.css ├── start.html └── finished.html ├── media ├── 1.png ├── 10.png ├── 2.png ├── 3.png ├── 4.png ├── 5.png ├── 6.png ├── 7.png ├── 8.png └── 9.png ├── global.css └── ReadMe.md /10. Checkerboard-layout/start.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /2. Centered-Content/start.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /3. Reordering-Content/start.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /3. Reordering-Content/start.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /4. Responsive-Navbar/start.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /5. Asymetric-Dashboard/start.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /1. responsive-3-column-grid/start.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /6. Asymetric-Gallery-Layout/start.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /7. Responsive-Card-Gallery/start.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /7. Responsive-Card-Gallery/start.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /8. Responsive-2-column-with-footer/start.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /9. Responsive-2-column-with-footer (grid areas)/start.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesqquick/Getting-Started-with-CSS-Grid-by-Example/HEAD/media/1.png -------------------------------------------------------------------------------- /media/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesqquick/Getting-Started-with-CSS-Grid-by-Example/HEAD/media/10.png -------------------------------------------------------------------------------- /media/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesqquick/Getting-Started-with-CSS-Grid-by-Example/HEAD/media/2.png -------------------------------------------------------------------------------- /media/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesqquick/Getting-Started-with-CSS-Grid-by-Example/HEAD/media/3.png -------------------------------------------------------------------------------- /media/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesqquick/Getting-Started-with-CSS-Grid-by-Example/HEAD/media/4.png -------------------------------------------------------------------------------- /media/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesqquick/Getting-Started-with-CSS-Grid-by-Example/HEAD/media/5.png -------------------------------------------------------------------------------- /media/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesqquick/Getting-Started-with-CSS-Grid-by-Example/HEAD/media/6.png -------------------------------------------------------------------------------- /media/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesqquick/Getting-Started-with-CSS-Grid-by-Example/HEAD/media/7.png -------------------------------------------------------------------------------- /media/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesqquick/Getting-Started-with-CSS-Grid-by-Example/HEAD/media/8.png -------------------------------------------------------------------------------- /media/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesqquick/Getting-Started-with-CSS-Grid-by-Example/HEAD/media/9.png -------------------------------------------------------------------------------- /2. Centered-Content/finished.css: -------------------------------------------------------------------------------- 1 | .grid-container { 2 | display: grid; 3 | height: 40vh; 4 | width: 60vw; 5 | margin: 0 auto; 6 | box-shadow: 1px 1px 4px #ccc; 7 | border: 1px solid #ccc; 8 | justify-items: center; 9 | align-items: center; 10 | border-radius: 5px; 11 | padding: 40px; 12 | } 13 | -------------------------------------------------------------------------------- /3. Reordering-Content/finished.js: -------------------------------------------------------------------------------- 1 | const shuffleBtn = document.getElementById('shuffleBtn'); 2 | const items = [...document.querySelectorAll('.grid-item')]; 3 | 4 | shuffleBtn.addEventListener('click', () => { 5 | items.forEach((item) => { 6 | const random = Math.floor(Math.random() * 4); 7 | item.setAttribute('style', `order: ${random};`); 8 | }); 9 | }); 10 | -------------------------------------------------------------------------------- /8. Responsive-2-column-with-footer/finished.css: -------------------------------------------------------------------------------- 1 | .grid-container { 2 | display: grid; 3 | grid-gap: 20px; 4 | } 5 | 6 | @media (min-width: 786px) { 7 | .grid-container { 8 | grid-template-columns: repeat(3, 1fr); 9 | } 10 | 11 | .header { 12 | grid-column: span 3; 13 | } 14 | 15 | .main { 16 | grid-column: span 2; 17 | } 18 | 19 | .footer { 20 | grid-column: span 3; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /10. Checkerboard-layout/finished.css: -------------------------------------------------------------------------------- 1 | .row { 2 | display: grid; 3 | grid-template-columns: repeat(2, 1fr); 4 | align-items: stretch; 5 | color: white; 6 | } 7 | 8 | .row__image { 9 | width: 100%; 10 | object-fit: cover; 11 | height: 400px; 12 | } 13 | 14 | .row__details { 15 | padding: 20px; 16 | } 17 | 18 | @media (max-width: 786px) { 19 | .row { 20 | grid-template-columns: 1fr; 21 | } 22 | 23 | .row__image { 24 | grid-row: -1; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /3. Reordering-Content/finished.css: -------------------------------------------------------------------------------- 1 | .grid-container { 2 | display: grid; 3 | grid-gap: 20px; 4 | } 5 | 6 | .btn { 7 | padding: 15px 20px; 8 | border-radius: 5px; 9 | margin-bottom: 20px; 10 | font-size: 18px; 11 | text-transform: uppercase; 12 | cursor: pointer; 13 | } 14 | 15 | @media (max-width: 786px) { 16 | .item1 { 17 | order: 3; 18 | } 19 | .item2 { 20 | order: 4; 21 | } 22 | .item3 { 23 | order: 1; 24 | } 25 | .item4 { 26 | order: 2; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /1. responsive-3-column-grid/finished.css: -------------------------------------------------------------------------------- 1 | .grid-container { 2 | display: grid; 3 | grid-template-columns: 200px 1fr 200px; 4 | grid-gap: 20px; 5 | } 6 | 7 | @media (max-width: 1000px) { 8 | .grid-container { 9 | /* grid-template-columns: 1fr; */ 10 | grid-template-columns: 200px 1fr; 11 | } 12 | 13 | .item3 { 14 | grid-column: span 2; 15 | } 16 | } 17 | 18 | @media (max-width: 786px) { 19 | .grid-container { 20 | /* grid-template-columns: 1fr; */ 21 | grid-template-columns: 1fr; 22 | } 23 | .item3 { 24 | grid-column: span 1; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /4. Responsive-Navbar/finished.css: -------------------------------------------------------------------------------- 1 | .nav { 2 | display: grid; 3 | grid-template-columns: 1fr auto; 4 | align-items: center; 5 | padding: 20px; 6 | color: white; 7 | } 8 | 9 | .nav__items { 10 | display: grid; 11 | grid-gap: 20px; 12 | grid-auto-flow: column; 13 | list-style: none; 14 | padding-inline-start: 0; 15 | } 16 | 17 | .nav__brand { 18 | font-size: 24px; 19 | font-weight: 700; 20 | } 21 | 22 | @media (max-width: 1000px) { 23 | } 24 | 25 | @media (max-width: 786px) { 26 | .nav { 27 | grid-template-columns: 1fr; 28 | justify-items: center; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /9. Responsive-2-column-with-footer (grid areas)/finished.css: -------------------------------------------------------------------------------- 1 | .grid-container { 2 | display: grid; 3 | grid-gap: 20px; 4 | grid-template-areas: 5 | 'header' 6 | 'sidebar' 7 | 'main' 8 | 'footer'; 9 | } 10 | 11 | .header { 12 | grid-area: header; 13 | } 14 | 15 | .main { 16 | grid-area: main; 17 | } 18 | 19 | .sidebar { 20 | grid-area: sidebar; 21 | } 22 | 23 | .footer { 24 | grid-area: footer; 25 | } 26 | 27 | @media (min-width: 786px) { 28 | .grid-container { 29 | grid-template-areas: 30 | 'header header header' 31 | 'sidebar main main' 32 | 'footer footer footer'; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /7. Responsive-Card-Gallery/start.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 | 7 |House: ${character.house}
24 |Lorem ipsum dolor sit amet.
20 |35 | Lorem ipsum dolor sit amet consectetur adipisicing elit. 36 | Nisi a voluptas ratione quo, fugiat accusantium 37 | provident laborum quis voluptatibus quisquam obcaecati, 38 | perspiciatis corrupti optio architecto rerum iste 39 | asperiores beatae maxime. 40 |
41 |42 | Lorem ipsum dolor sit amet, consectetur adipisicing 43 | elit. Dicta alias commodi ex aspernatur culpa, magni 44 | laborum! In, dolore tenetur pariatur rem aliquam 45 | repellendus quod, aspernatur, facilis autem ipsam 46 | distinctio deserunt. 47 |
48 |Lorem ipsum dolor sit amet.
20 |35 | Lorem ipsum dolor sit amet consectetur adipisicing elit. 36 | Nisi a voluptas ratione quo, fugiat accusantium 37 | provident laborum quis voluptatibus quisquam obcaecati, 38 | perspiciatis corrupti optio architecto rerum iste 39 | asperiores beatae maxime. 40 |
41 |42 | Lorem ipsum dolor sit amet, consectetur adipisicing 43 | elit. Dicta alias commodi ex aspernatur culpa, magni 44 | laborum! In, dolore tenetur pariatur rem aliquam 45 | repellendus quod, aspernatur, facilis autem ipsam 46 | distinctio deserunt. 47 |
48 |Lorem ipsum dolor sit amet.
27 |42 | Lorem ipsum dolor sit amet consectetur adipisicing elit. 43 | Nisi a voluptas ratione quo, fugiat accusantium 44 | provident laborum quis voluptatibus quisquam obcaecati, 45 | perspiciatis corrupti optio architecto rerum iste 46 | asperiores beatae maxime. 47 |
48 |49 | Lorem ipsum dolor sit amet, consectetur adipisicing 50 | elit. Dicta alias commodi ex aspernatur culpa, magni 51 | laborum! In, dolore tenetur pariatur rem aliquam 52 | repellendus quod, aspernatur, facilis autem ipsam 53 | distinctio deserunt. 54 |
55 |Lorem ipsum dolor sit amet.
27 |42 | Lorem ipsum dolor sit amet consectetur adipisicing elit. 43 | Nisi a voluptas ratione quo, fugiat accusantium 44 | provident laborum quis voluptatibus quisquam obcaecati, 45 | perspiciatis corrupti optio architecto rerum iste 46 | asperiores beatae maxime. 47 |
48 |49 | Lorem ipsum dolor sit amet, consectetur adipisicing 50 | elit. Dicta alias commodi ex aspernatur culpa, magni 51 | laborum! In, dolore tenetur pariatur rem aliquam 52 | repellendus quod, aspernatur, facilis autem ipsam 53 | distinctio deserunt. 54 |
55 |
20 | 23 | Lorem ipsum dolor sit amet consectetur adipisicing elit. 24 | Vero explicabo, consequatur odit unde animi natus porro 25 | tempore modi consectetur! Distinctio esse modi enim 26 | repellat unde recusandae mollitia? Exercitationem, 27 | facilis totam! 28 |
29 |35 | Lorem ipsum dolor sit amet consectetur adipisicing elit. 36 | Vero explicabo, consequatur odit unde animi natus porro 37 | tempore modi consectetur! Distinctio esse modi enim 38 | repellat unde recusandae mollitia? Exercitationem, 39 | facilis totam! 40 |
41 |
47 |
54 | 57 | Lorem ipsum dolor sit amet consectetur adipisicing elit. 58 | Vero explicabo, consequatur odit unde animi natus porro 59 | tempore modi consectetur! Distinctio esse modi enim 60 | repellat unde recusandae mollitia? Exercitationem, 61 | facilis totam! 62 |
63 |
20 | 23 | Lorem ipsum dolor sit amet consectetur adipisicing elit. 24 | Vero explicabo, consequatur odit unde animi natus porro 25 | tempore modi consectetur! Distinctio esse modi enim 26 | repellat unde recusandae mollitia? Exercitationem, 27 | facilis totam! 28 |
29 |35 | Lorem ipsum dolor sit amet consectetur adipisicing elit. 36 | Vero explicabo, consequatur odit unde animi natus porro 37 | tempore modi consectetur! Distinctio esse modi enim 38 | repellat unde recusandae mollitia? Exercitationem, 39 | facilis totam! 40 |
41 |
47 |
54 | 57 | Lorem ipsum dolor sit amet consectetur adipisicing elit. 58 | Vero explicabo, consequatur odit unde animi natus porro 59 | tempore modi consectetur! Distinctio esse modi enim 60 | repellat unde recusandae mollitia? Exercitationem, 61 | facilis totam! 62 |
63 |Manhattan Picture
23 | 24 |
31 |
32 | Ecto One
33 | 34 |
42 |
43 | Ninja Turtles
44 | 45 |
53 |
54 | Empire State Building
55 | 56 |One World Trade
65 | 66 |Williamsburg
75 | 76 |Manhattan Picture
23 | 24 |
31 |
32 | Ecto One
33 | 34 |
42 |
43 | Ninja Turtles
44 | 45 |
53 |
54 | Empire State Building
55 | 56 |One World Trade
65 | 66 |Williamsburg
75 | 76 |