SCSS Nesting
permalinkThis is, without a doubt, my favorite part of SCSS
. Nesting is used to nest code inside each other; it's very versatile. Meaning, in the long term, it will make you think twice about naming because it's easier to sort.
Basic SCSS Nesting permalink
In basic nesting can be used as follows
Let's take the following HTML
<ul>
<li>
<a href="https://daily-dev-tips.com/" target="_blank">Daily Dev Tips</a>
</li>
</ul>
We can then make some cool SCSS
like this
ul {
list-style: none;
margin: 0;
padding: 0;
li {
display: inline-block;
background: #333;
a {
padding: 10px;
color: #efefef;
}
}
}
This will then render in the following CSS
ul {
list-style: none;
margin: 0;
padding: 0;
}
ul li {
display: inline-block;
background: #333;
}
ul li a {
padding: 10px;
color: #efefef;
}
This looks like the following Codepen.
See the Pen SCSS Basic Nesting by Chris Bongers (@rebelchris) on CodePen.
SCSS Dash Nesting permalink
Another really cool one is class nesting
<div class="box">
<div class="box-inner">
<h1 class="box-inner-title">
Welcome π
</h1>
</div>
</div>
And we can then use the following SCSS
.box {
background: #ebc3db;
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
&-inner {
background: #c09bd8;
padding: 20px 40px;
border-radius: 20px;
&-title {
color: #ede3e9;
font-size: 2rem;
}
}
}
Cool right! It just makes it more easy and clear what a part of your CSS
is for.
SCSS Sub Nesting permalink
We can also use sub nesting for our pseudo-selectors.
.box {
&-inner {
&:hover {
background: #9f84bd;
}
}
}
As you can see, these also use the & sign, and can be used for hovers
but also nth-child
etc.
This will result in the following Codepen.
See the Pen SCSS Basic Nesting Dash by Chris Bongers (@rebelchris) on CodePen.
Thank you for reading, and let's connect! permalink
Thank you for reading my blog. Feel free to subscribe to my email newsletter and connect on Facebook or Twitter