diff --git a/challenges/01-responsive-web-design/css-grid.json b/challenges/01-responsive-web-design/css-grid.json
index 5c34328a1..95fcfa4cd 100644
--- a/challenges/01-responsive-web-design/css-grid.json
+++ b/challenges/01-responsive-web-design/css-grid.json
@@ -15,13 +15,11 @@
],
"tests": [
{
- "text":
- "container class should have a display property with a value of grid.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*display\\s*?:\\s*?grid\\s*?;[\\s\\S]*}/gi), 'container class should have a display property with a value of grid.');"
+ "text": "container class should have a display property with a value of grid.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?display\\s*?:\\s*?grid\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a display property with a value of grid.');"
}
],
- "solutions": ["var code = \".container {display: grid;}\""],
+ "solutions": ["var code = \".container {/**/display: grid;/**/}\""],
"hints": [],
"releasedOn": "Feb 15, 2018",
"challengeType": 0,
@@ -76,14 +74,12 @@
],
"tests": [
{
- "text":
- "container class should have a grid-template-columns property with three units of 100px.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*grid-template-columns\\s*?:\\s*?100px\\s*?100px\\s*?100px\\s*?;[\\s\\S]*}/gi), 'container class should have a grid-template-columns property with three units of 100px.');"
+ "text": "container class should have a grid-template-columns property with three units of 100px.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?grid-template-columns\\s*?:\\s*?100px\\s*?100px\\s*?100px\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a grid-template-columns property with three units of 100px.');"
}
],
"solutions": [
- "var code = \".container {grid-template-columns: 100px 100px 100px;}\""
+ "var code = \".container {/**/grid-template-columns: 100px 100px 100px;/**/}\""
],
"hints": [],
"releasedOn": "Feb 15, 2018",
@@ -137,14 +133,12 @@
],
"tests": [
{
- "text":
- "container class should have a grid-template-rows property with two units of 50px.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*grid-template-rows\\s*?:\\s*?50px\\s*?50px\\s*?;[\\s\\S]*}/gi), 'container class should have a grid-template-rows property with two units of 50px.');"
+ "text": "container class should have a grid-template-rows property with two units of 50px.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?grid-template-rows\\s*?:\\s*?50px\\s*?50px\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a grid-template-rows property with two units of 50px.');"
}
],
"solutions": [
- "var code = \".container {grid-template-rows: 50px 50px;}\""
+ "var code = \".container {/**/grid-template-rows: 50px 50px;/**/}\""
],
"hints": [],
"releasedOn": "",
@@ -205,14 +199,12 @@
],
"tests": [
{
- "text":
- "container class should have a grid-template-columns property that has three columns with the following widths: 1fr, 100px, and 2fr.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*grid-template-columns\\s*?:\\s*?1fr\\s*?100px\\s*?2fr\\s*?;[\\s\\S]*}/gi), 'container class should have a grid-template-columns property that has three columns with the following widths: 1fr, 100px, and 2fr.');"
+ "text": "container class should have a grid-template-columns property that has three columns with the following widths: 1fr, 100px, and 2fr.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?grid-template-columns\\s*?:\\s*?1fr\\s*?100px\\s*?2fr\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a grid-template-columns property that has three columns with the following widths: 1fr, 100px, and 2fr.');"
}
],
"solutions": [
- "var code = \".container {grid-template-columns: 1fr 100px 2fr;}\""
+ "var code = \".container {/**/grid-template-columns: 1fr 100px 2fr;/**/}\""
],
"hints": [],
"releasedOn": "",
@@ -270,13 +262,11 @@
],
"tests": [
{
- "text":
- "container class should have a grid-column-gap property that has the value of 20px.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*grid-column-gap\\s*?:\\s*?20px\\s*?;[\\s\\S]*}/gi), 'container class should have a grid-column-gap property that has the value of 20px.');"
+ "text": "container class should have a grid-column-gap property that has the value of 20px.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?grid-column-gap\\s*?:\\s*?20px\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a grid-column-gap property that has the value of 20px.');"
}
],
- "solutions": ["var code = \".container {grid-column-gap: 20px;}\""],
+ "solutions": ["var code = \".container {/**/grid-column-gap: 20px;/**/}\""],
"hints": [],
"releasedOn": "",
"challengeType": 0,
@@ -332,13 +322,11 @@
],
"tests": [
{
- "text":
- "container class should have a grid-row-gap property that has the value of 5px.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*grid-row-gap\\s*?:\\s*?5px\\s*?;[\\s\\S]*}/gi), 'container class should have a grid-row-gap property that has the value of 5px.');"
+ "text": "container class should have a grid-row-gap property that has the value of 5px.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?grid-row-gap\\s*?:\\s*?5px\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a grid-row-gap property that has the value of 5px.');"
}
],
- "solutions": ["var code = \".container {grid-row-gap: 5px;}\""],
+ "solutions": ["var code = \".container {/**/grid-row-gap: 5px;/**/}\""],
"hints": [],
"releasedOn": "",
"challengeType": 0,
@@ -394,13 +382,11 @@
],
"tests": [
{
- "text":
- "container class should have a grid-gap property that introduces 10px gap between the rows and 20px gap between the columns.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*grid-gap\\s*?:\\s*?10px\\s*?20px\\s*?;[\\s\\S]*}/gi), 'container class should have a grid-gap property that introduces 10px gap between the rows and 20px gap between the columns.');"
+ "text": "container class should have a grid-gap property that introduces 10px gap between the rows and 20px gap between the columns.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?grid-gap\\s*?:\\s*?10px\\s*?20px\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a grid-gap property that introduces 10px gap between the rows and 20px gap between the columns.');"
}
],
- "solutions": ["var code = \".container {grid-gap: 10px 20px;}\""],
+ "solutions": ["var code = \".container {/**/grid-gap: 10px 20px;/**/}\""],
"hints": [],
"releasedOn": "",
"challengeType": 0,
@@ -462,13 +448,11 @@
],
"tests": [
{
- "text":
- "item5 class should have a grid-column property that has the value of 2 / 4.",
- "testString":
- "assert(code.match(/.item5\\s*?{[\\s\\S]*grid-column\\s*?:\\s*?2\\s*?\\/\\s*?4\\s*?;[\\s\\S]*}/gi), 'item5 class should have a grid-column property that has the value of 2 / 4.');"
+ "text": "item5 class should have a grid-column property that has the value of 2 / 4.",
+ "testString": "assert(code.match(/.item5\\s*?{[\\s\\S]*\\/\\s*?grid-column\\s*?:\\s*?2\\s*?\\/\\s*?4\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'item5 class should have a grid-column property that has the value of 2 / 4.');"
}
],
- "solutions": ["var code = \".item5 {grid-column: 2 / 4;}\""],
+ "solutions": ["var code = \".item5 {/**/grid-column: 2 / 4;/**/}\""],
"hints": [],
"releasedOn": "",
"challengeType": 0,
@@ -528,13 +512,11 @@
],
"tests": [
{
- "text":
- "item5 class should have a grid-row property that has the value of 2 / 4.",
- "testString":
- "assert(code.match(/.item5\\s*?{[\\s\\S]*grid-row\\s*?:\\s*?2\\s*?\\/\\s*?4\\s*?;[\\s\\S]*}/gi), 'item5 class should have a grid-row property that has the value of 2 / 4.');"
+ "text": "item5 class should have a grid-row property that has the value of 2 / 4.",
+ "testString": "assert(code.match(/.item5\\s*?{[\\s\\S]*\\/\\s*?grid-row\\s*?:\\s*?2\\s*?\\/\\s*?4\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'item5 class should have a grid-row property that has the value of 2 / 4.');"
}
],
- "solutions": ["var code = \".item5 {grid-row: 2 / 4;}\""],
+ "solutions": ["var code = \".item5 {/**/grid-row: 2 / 4;/**/}\""],
"hints": [],
"releasedOn": "",
"challengeType": 0,
@@ -598,13 +580,11 @@
],
"tests": [
{
- "text":
- "item2 class should have a justify-self property that has the value of center.",
- "testString":
- "assert(code.match(/.item2\\s*?{[\\s\\S]*justify-self\\s*?:\\s*?center\\s*?;[\\s\\S]*}/gi), 'item2 class should have a justify-self property that has the value of center.');"
+ "text": "item2 class should have a justify-self property that has the value of center.",
+ "testString": "assert(code.match(/.item2\\s*?{[\\s\\S]*\\/\\s*?justify-self\\s*?:\\s*?center\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'item2 class should have a justify-self property that has the value of center.');"
}
],
- "solutions": ["var code = \".item2 {justify-self: center;}\""],
+ "solutions": ["var code = \".item2 {/**/justify-self: center;/**/}\""],
"hints": [],
"releasedOn": "",
"challengeType": 0,
@@ -665,13 +645,11 @@
],
"tests": [
{
- "text":
- "item3 class should have a align-self property that has the value of end.",
- "testString":
- "assert(code.match(/.item3\\s*?{[\\s\\S]*align-self\\s*?:\\s*?end\\s*?;[\\s\\S]*}/gi), 'item3 class should have a align-self property that has the value of end.');"
+ "text": "item3 class should have a align-self property that has the value of end.",
+ "testString": "assert(code.match(/.item3\\s*?{[\\s\\S]*\\/\\s*?align-self\\s*?:\\s*?end\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'item3 class should have a align-self property that has the value of end.');"
}
],
- "solutions": ["var code = \".item3 {align-self: end;}\""],
+ "solutions": ["var code = \".item3 {/**/align-self: end;/**/}\""],
"hints": [],
"releasedOn": "",
"challengeType": 0,
@@ -732,13 +710,11 @@
],
"tests": [
{
- "text":
- "container class should have a justify-items property that has the value of center.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*justify-items\\s*?:\\s*?center\\s*?;[\\s\\S]*}/gi), 'container class should have a justify-items property that has the value of center.');"
+ "text": "container class should have a justify-items property that has the value of center.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?justify-items\\s*?:\\s*?center\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a justify-items property that has the value of center.');"
}
],
- "solutions": ["var code = \".container {justify-items: center;}\""],
+ "solutions": ["var code = \".container {/**/justify-items: center;/**/}\""],
"hints": [],
"releasedOn": "",
"challengeType": 0,
@@ -795,13 +771,11 @@
],
"tests": [
{
- "text":
- "container class should have a align-items property that has the value of end.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*align-items\\s*?:\\s*?end\\s*?;[\\s\\S]*}/gi), 'container class should have a align-items property that has the value of end.');"
+ "text": "container class should have a align-items property that has the value of end.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?align-items\\s*?:\\s*?end\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a align-items property that has the value of end.');"
}
],
- "solutions": ["var code = \".container {align-items: end;}\""],
+ "solutions": ["var code = \".container {/**/align-items: end;/**/}\""],
"hints": [],
"releasedOn": "",
"challengeType": 0,
@@ -862,14 +836,12 @@
],
"tests": [
{
- "text":
- "container class should have a grid-template-areas property similar to the preview but has . instead of the advert area.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*grid-template-areas\\s*?:\\s*?\"\\s*?header\\s*?header\\s*?header\\s*?\"\\s*?\"\\s*?.\\s*?content\\s*?content\\s*?\"\\s*?\"\\s*?footer\\s*?footer\\s*?footer\\s*?\"\\s*?;[\\s\\S]*}/gi), 'container class should have a grid-template-areas propertiy similar to the preview but has . instead of the advert area.');"
+ "text": "container class should have a grid-template-areas property similar to the preview but has . instead of the advert area.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?grid-template-areas\\s*?:\\s*?\"\\s*?header\\s*?header\\s*?header\\s*?\"\\s*?\"\\s*?.\\s*?content\\s*?content\\s*?\"\\s*?\"\\s*?footer\\s*?footer\\s*?footer\\s*?\"\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a grid-template-areas propertiy similar to the preview but has . instead of the advert area.');"
}
],
"solutions": [
- "var code = \".container {grid-template-areas: \\\"header header header\\\" \\\". content content\\\" \\\"footer footer footer\\\";}\""
+ "var code = \".container {/**/grid-template-areas: \\\"header header header\\\" \\\". content content\\\" \\\"footer footer footer\\\";/**/}\""
],
"hints": [],
"releasedOn": "",
@@ -932,13 +904,11 @@
],
"tests": [
{
- "text":
- "item5 class should have a grid-area property that has the value of footer.",
- "testString":
- "assert(code.match(/.item5\\s*?{[\\s\\S]*grid-area\\s*?:\\s*?footer\\s*?;[\\s\\S]*}/gi), 'item5 class should have a grid-area property that has the value of footer.');"
+ "text": "item5 class should have a grid-area property that has the value of footer.",
+ "testString": "assert(code.match(/.item5\\s*?{[\\s\\S]*\\/\\s*?grid-area\\s*?:\\s*?footer\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'item5 class should have a grid-area property that has the value of footer.');"
}
],
- "solutions": ["var code = \".item5 {grid-area: footer;}\""],
+ "solutions": ["var code = \".item5 {/**/grid-area: footer;/**/}\""],
"hints": [],
"releasedOn": "",
"challengeType": 0,
@@ -1006,13 +976,11 @@
],
"tests": [
{
- "text":
- "item5 class should have a grid-area property that has the value of 3/1/4/4.",
- "testString":
- "assert(code.match(/.item5\\s*?{[\\s\\S]*grid-area\\s*?:\\s*?3\\s*?\\/\\s*?1\\s*?\\/\\s*?4\\s*?\\/\\s*?4\\s*?;[\\s\\S]*}/gi), 'item5 class should have a grid-area property that has the value of 3/1/4/4.');"
+ "text": "item5 class should have a grid-area property that has the value of 3/1/4/4.",
+ "testString": "assert(code.match(/.item5\\s*?{[\\s\\S]*\\/\\s*?grid-area\\s*?:\\s*?3\\s*?\\/\\s*?1\\s*?\\/\\s*?4\\s*?\\/\\s*?4\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'item5 class should have a grid-area property that has the value of 3/1/4/4.');"
}
],
- "solutions": ["var code = \".item5 {grid-area: 3/1/4/4;}\""],
+ "solutions": ["var code = \".item5 {/**/grid-area: 3/1/4/4;/**/}\""],
"hints": [],
"releasedOn": "",
"challengeType": 0,
@@ -1080,14 +1048,12 @@
],
"tests": [
{
- "text":
- "container class should have a grid-template-columns property that is set to repeat 3 columns with the width of 1fr.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*grid-template-columns\\s*?:\\s*?repeat\\s*?\\(\\s*?3\\s*?,\\s*?1fr\\s*?\\)\\s*?;[\\s\\S]*}/gi), 'container class should have a grid-template-columns property that is set to repeat 3 columns with the width of 1fr.');"
+ "text": "container class should have a grid-template-columns property that is set to repeat 3 columns with the width of 1fr.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?grid-template-columns\\s*?:\\s*?repeat\\s*?\\(\\s*?3\\s*?,\\s*?1fr\\s*?\\)\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a grid-template-columns property that is set to repeat 3 columns with the width of 1fr.');"
}
],
"solutions": [
- "var code = \".container {grid-template-columns: repeat(3, 1fr);}\""
+ "var code = \".container {/**/grid-template-columns: repeat(3, 1fr);/**/}\""
],
"hints": [],
"releasedOn": "",
@@ -1147,14 +1113,12 @@
],
"tests": [
{
- "text":
- "container class should have a grid-template-columns property that is set to repeat 3 columns with the minimum width of 90px and maximum width of 1fr.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*grid-template-columns\\s*?:\\s*?repeat\\s*?\\(\\s*?3\\s*?,\\s*?minmax\\s*?\\(\\s*?90px\\s*?,\\s*?1fr\\s*?\\)\\s*?\\)\\s*?;[\\s\\S]*}/gi), 'container class should have a grid-template-columns property that is set to repeat 3 columns with the minimum width of 90px and maximum width of 1fr.');"
+ "text": "container class should have a grid-template-columns property that is set to repeat 3 columns with the minimum width of 90px and maximum width of 1fr.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?grid-template-columns\\s*?:\\s*?repeat\\s*?\\(\\s*?3\\s*?,\\s*?minmax\\s*?\\(\\s*?90px\\s*?,\\s*?1fr\\s*?\\)\\s*?\\)\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container class should have a grid-template-columns property that is set to repeat 3 columns with the minimum width of 90px and maximum width of 1fr.');"
}
],
"solutions": [
- "var code = \".container {grid-template-columns: repeat(3, minmax(90px, 1fr));}\""
+ "var code = \".container {/**/grid-template-columns: repeat(3, minmax(90px, 1fr));/**/}\""
],
"hints": [],
"releasedOn": "",
@@ -1216,14 +1180,12 @@
],
"tests": [
{
- "text":
- "container class should have a grid-template-columns property with repeat and auto-fill that will fill the grid with columns that have a minimum width of 60px and maximum of 1fr.",
- "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), 'container class should have a grid-template-columns property with repeat and auto-fill that will fill the grid with columns that have a minimum width of 60px and maximum of 1fr.');"
+ "text": "container class should have a grid-template-columns property with repeat and auto-fill that will fill the grid with columns that have a minimum width of 60px and maximum of 1fr.",
+ "testString": "assert(code.match(/.container\\s*?{[\\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\\S]*}/gi), 'container class should have a grid-template-columns property with repeat and auto-fill that will fill the grid with columns that have a minimum width of 60px and maximum of 1fr.');"
}
],
"solutions": [
- "var code = \".container {grid-template-columns: repeat(auto-fill, minmax(60px, 1fr));}\""
+ "var code = \".container {/**/grid-template-columns: repeat(auto-fill, minmax(60px, 1fr));/**/}\""
],
"hints": [],
"releasedOn": "",
@@ -1299,14 +1261,12 @@
],
"tests": [
{
- "text":
- "container2 class should have a grid-template-columns property with repeat and auto-fit that will fill the grid with columns that have a minimum width of 60px and maximum of 1fr.",
- "testString":
- "assert(code.match(/.container\\s*?{[\\s\\S]*grid-template-columns\\s*?:\\s*?repeat\\s*?\\(\\s*?auto-fit\\s*?,\\s*?minmax\\s*?\\(\\s*?60px\\s*?,\\s*?1fr\\s*?\\)\\s*?\\)\\s*?;[\\s\\S]*}/gi), 'container2 class should have a grid-template-columns property with repeat and auto-fit that will fill the grid with columns that have a minimum width of 60px and maximum of 1fr.');"
+ "text": "container2 class should have a grid-template-columns property with repeat and auto-fit that will fill the grid with columns that have a minimum width of 60px and maximum of 1fr.",
+ "testString": "assert(code.match(/.container\\s*?{[\\s\\S]*\\/\\s*?grid-template-columns\\s*?:\\s*?repeat\\s*?\\(\\s*?auto-fit\\s*?,\\s*?minmax\\s*?\\(\\s*?60px\\s*?,\\s*?1fr\\s*?\\)\\s*?\\)\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'container2 class should have a grid-template-columns property with repeat and auto-fit that will fill the grid with columns that have a minimum width of 60px and maximum of 1fr.');"
}
],
"solutions": [
- "var code = \".container {grid-template-columns: repeat( auto-fill, minmax(60px, 1fr));} .container2 {grid-template-columns: repeat(auto-fit, minmax(60px, 1fr));}\""
+ "var code = \".container {grid-template-columns: repeat( auto-fill, minmax(60px, 1fr));} .container2 {/**/grid-template-columns: repeat(auto-fit, minmax(60px, 1fr));/**/}\""
],
"hints": [],
"releasedOn": "",
@@ -1383,14 +1343,12 @@
],
"tests": [
{
- "text":
- "When the viewport is 400px or more, container class should have a grid-template-areas property in which the footer and header areas occupy the top and bottom rows respectively and advert and content occupy the left and right columns of the middle row.",
- "testString":
- "assert(code.match(/@media\\s*?\\(\\s*?min-width\\s*?:\\s*?400px\\s*?\\)[\\s\\S]*.container\\s*?{[\\s\\S]*grid-template-areas\\s*?:\\s*?\"\\s*?header\\s*?header\\s*?\"\\s*?\"\\s*?advert\\s*?content\\s*?\"\\s*?\"\\s*?footer\\s*?footer\\s*?\"\\s*?;[\\s\\S]*}/gi), 'When the viewport is 400px or more, container class should have a grid-template-areas property in which the footer and header areas occupy the top and bottom rows respectively and advert and content occupy the left and right columns of the middle row.');"
+ "text": "When the viewport is 400px or more, container class should have a grid-template-areas property in which the footer and header areas occupy the top and bottom rows respectively and advert and content occupy the left and right columns of the middle row.",
+ "testString": "assert(code.match(/@media\\s*?\\(\\s*?min-width\\s*?:\\s*?400px\\s*?\\)[\\s\\S]*.container\\s*?{[\\s\\S]*\\/\\s*?grid-template-areas\\s*?:\\s*?\"\\s*?header\\s*?header\\s*?\"\\s*?\"\\s*?advert\\s*?content\\s*?\"\\s*?\"\\s*?footer\\s*?footer\\s*?\"\\s*?;\\s*?\\/[\\s\\S]*}/gi), 'When the viewport is 400px or more, container class should have a grid-template-areas property in which the footer and header areas occupy the top and bottom rows respectively and advert and content occupy the left and right columns of the middle row.');"
}
],
"solutions": [
- "var code = \"@media (min-width: 400px){.container{ grid-template-areas: \\\"header header\\\" \\\"advert content\\\" \\\"footer footer\\\";}}\""
+ "var code = \"@media (min-width: 400px){.container{ /**/grid-template-areas: \\\"header header\\\" \\\"advert content\\\" \\\"footer footer\\\";/**/}}\""
],
"hints": [],
"releasedOn": "",