extend that makes it easy to borrow the CSS rules from one element and build upon them in another.
For example, the below block of CSS rules style a .panel class. It has a background-color, height and border.
```scss
.panel{
background-color: red;
height: 70px;
border: 2px solid green;
}
```
Now you want another panel called .big-panel. It has the same base properties as .panel, but also needs a width and font-size.
It's possible to copy and paste the initial CSS rules from .panel, but the code becomes repetitive as you add more types of panels.
The extend directive is a simple way to reuse the rules written for one element, then add more for another:
```scss
.big-panel{
@extend .panel;
width: 150px;
font-size: 2em;
}
```
The .big-panel will have the same properties as .panel in addition to the new styles.
.info-important that extends .info and also has a background-color set to magenta.
info-important class should have a background-color set to magenta.
testString: assert(code.match(/\.info-important\s*?{[\s\S]*background-color\s*?:\s*?magenta\s*?;[\s\S]*}/gi), 'Your info-important class should have a background-color set to magenta.');
- text: Your info-important class should use @extend to inherit the styling from the info class.
testString: assert(code.match(/\.info-important\s*?{[\s\S]*@extend\s*?.info\s*?;[\s\S]*/gi), 'Your info-important class should use @extend to inherit the styling from the info class.');
```
This is an important post. It should extend the class ".info" and have its own CSS styles.
This is a simple post. It has basic styling and can be extended for other uses.
This is an important post. It should extend the class ".info" and have its own CSS styles.
This is a simple post. It has basic styling and can be extended for other uses.