Just use an additional decedent selector only changing the background property:
.leftpart .nav-links .nav-links ul li a {
background: red;
}
.leftpart {
width: 100%;
display: block;
margin: 20px;
}
.leftpart .nav-links ul {
list-style: none;
margin: 0;
padding: 0;
display: block;
}
.leftpart .nav-links ul li {
margin-bottom: 20px;
}
.leftpart .nav-links ul li a {
background: green;
color: #fff;
padding: 20px;
display: inline-block;
}
.leftpart .nav-links .nav-links ul li a {
background: red;
}
<div class="leftpart">
<div class="nav-links">
<h1> Primary Links </h1>
<ul>
<li>
<a href="/profile.html">Profile</a>
</li>
<li>
<a href="/friends.html">Friends</a>
</li>
<li>
<a href="/milestone.html">Milestones</a>
</li>
<li>
<a href="/groups.html">Groups</a>
</li>
</ul>
<div class="sub-seciton">
<div class="nav-links">
<ul>
<li>
<a href="#">Edit</a>
</li>
<li>
<a href="#">Save</a>
</li>
</ul>
</div>
</div>
</div>
<div class="nav-links">
<h1> Secondary Links </h1>
<ul>
<li>
<a href="/privacy.html">Privacy</a>
</li>
<li>
<a href="/settings.html">Settings</a>
</li>
</ul>
</div>
</div>
You need to target .nav-links
inside the sub-section
. You can also style your nav-links
siblings separately. See my example:
.leftpart {
width: 100%;
display: block;
margin: 20px;
}
.leftpart .nav-links ul {
list-style: none;
margin: 0;
padding: 0;
display: block;
}
.leftpart .nav-links ul li {
margin-bottom:20px;
}
.leftpart > .nav-links ul li a {
background:green;
color:#fff;
padding: 20px;
display: inline-block;
}
.leftpart .nav-links .sub-seciton .nav-links ul li a {
background:red ;
}
.leftpart > .nav-links:nth-child(2) ul li a {
background: blue;
}
<div class="leftpart">
<div class="nav-links">
<h1> Primary Links </h1>
<ul>
<li>
<a href="/profile.html">Profile</a>
</li>
<li>
<a href="/friends.html">Friends</a>
</li>
<li>
<a href="/milestone.html">Milestones</a>
</li>
<li>
<a href="/groups.html">Groups</a>
</li>
</ul>
<div class="sub-seciton">
<div class="nav-links">
<ul>
<li>
<a href="#">Edit</a>
</li>
<li>
<a href="#">Save</a>
</li>
</ul>
</div>
</div>
</div>
<div class="nav-links">
<h1> Secondary Links </h1>
<ul>
<li>
<a href="/privacy.html">Privacy</a>
</li>
<li>
<a href="/settings.html">Settings</a>
</li>
</ul>
</div>
</div>
Just set your CSS code more specific for it:
.leftpart {
width: 100%;
display: block;
margin: 20px;
}
.leftpart .nav-links ul {
list-style: none;
margin: 0;
padding: 0;
display: block;
}
.leftpart .nav-links ul li {
margin-bottom:20px;
}
.leftpart .nav-links ul li a {
background:green;
color:#fff;
padding: 20px;
display: inline-block;
}
.leftpart .nav-links .sub-seciton .nav-links ul li a {
background:red;
color:#fff;
padding: 20px;
display: inline-block;
}
<div class="leftpart">
<div class="nav-links">
<h1> Primary Links </h1>
<ul>
<li>
<a href="/profile.html">Profile</a>
</li>
<li>
<a href="/friends.html">Friends</a>
</li>
<li>
<a href="/milestone.html">Milestones</a>
</li>
<li>
<a href="/groups.html">Groups</a>
</li>
</ul>
<div class="sub-seciton">
<div class="nav-links">
<ul>
<li>
<a href="#">Edit</a>
</li>
<li>
<a href="#">Save</a>
</li>
</ul>
</div>
</div>
</div>
<div class="nav-links">
<h1> Secondary Links </h1>
<ul>
<li>
<a href="/privacy.html">Privacy</a>
</li>
<li>
<a href="/settings.html">Settings</a>
</li>
</ul>
</div>
</div>
I have to create left section for a website “.leftpart” in which I have parent navigation class “.nav-links” with CSS properties. I have also have same class “.nav-links” as a sub section under parent “.nav-links”. I want to give a different background color “red” to child “.nav-links” [Edit and Save]. Can you anyone suggest best way to do this ?
My code is below, thanks in advance :
.leftpart {
width: 100%;
display: block;
margin: 20px;
}
.leftpart .nav-links ul {
list-style: none;
margin: 0;
padding: 0;
display: block;
}
.leftpart .nav-links ul li {
margin-bottom:20px;
}
.leftpart .nav-links ul li a {
background:green;
color:#fff;
padding: 20px;
display: inline-block;
}
<div class="leftpart">
<div class="nav-links">
<h1> Primary Links </h1>
<ul>
<li>
<a href="/profile.html">Profile</a>
</li>
<li>
<a href="/friends.html">Friends</a>
</li>
<li>
<a href="/milestone.html">Milestones</a>
</li>
<li>
<a href="/groups.html">Groups</a>
</li>
</ul>
<div class="sub-seciton">
<div class="nav-links">
<ul>
<li>
<a href="#">Edit</a>
</li>
<li>
<a href="#">Save</a>
</li>
</ul>
</div>
</div>
</div>
<div class="nav-links">
<h1> Secondary Links </h1>
<ul>
<li>
<a href="/privacy.html">Privacy</a>
</li>
<li>
<a href="/settings.html">Settings</a>
</li>
</ul>
</div>
</div>
[ .leftpart > .nav-links:nth-child(2) ul li a ] is OPTIONAL. I added it just for your understanding.