In my project, using a mobile-first approach, I'm showing only the first breadcrumb (li
). Initially the breadcrumb displays a ::before
class with a content: '<';
. Once the viewport reaches 575px, I'm showing both breadcrumbs. However, I don't want to show the ::before
class on the first breadcrumb, only on the second breadcrumb and any breadcrumb placed after. In other words, all but the first.
body {
background-color: darkblue;
}
a {
text-decoration: none;
}
.prelative ~ .breadcrumb-section {
z-index: 1000;
}
@media (min-width: 576px) {
.prelative ~ .breadcrumb-section {
padding: 1rem 0;
}
}
.prelative ~ .breadcrumb-section ol {
margin: 0;
padding: 0;
}
.prelative ~ .breadcrumb-section .breadcrumb {
position: absolute;
top: 8%;
display: flex;
list-style-type: none;
padding-left: 1rem;
justify-content: space-between;
}
@media (min-width: 1200px) {
.prelative ~ .breadcrumb-section .breadcrumb {
top: 10%;
padding: 0 2.833rem;
}
}
.prelative ~ .breadcrumb-section .breadcrumb-item {
color: white;
font-weight: weight(regular);
}
.prelative ~ .breadcrumb-section .breadcrumb-item + .breadcrumb-item {
padding-left: 2rem;
}
.prelative ~ .breadcrumb-section .breadcrumb-item + .breadcrumb-item::before {
padding-right: 5rem;
color: white;
}
.prelative ~ .breadcrumb-section .breadcrumb-item:not(:first-child) {
display: none;
}
@media (min-width: 576px) {
.prelative ~ .breadcrumb-section .breadcrumb-item:not(:first-child) {
display: block;
}
}
.prelative ~ .breadcrumb-section .breadcrumb-item a {
color: #fff;
font-weight: 700;
display: flex;
align-items: center;
}
.prelative ~ .breadcrumb-section .breadcrumb-item a::before {
font-weight: 300;
content: "<";
display: inline-block;
padding-right: 0.5rem;
}
@media (min-width: 576px) {
.prelative ~ .breadcrumb-section .breadcrumb-item a::before {
content: "/";
}
.prelative ~ .breadcrumb-section .breadcrumb-item a::before:first-child {
content: "";
}
}
.prelative ~ .breadcrumb-section .breadcrumb-item.active {
display: none;
}
<div class="prelative"></div>
<div class="breadcrumb-section">
<nav aria-label="Full path to the current page" class="breadcrumb-wrapper">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/police">Police</a></li>
<li class="breadcrumb-item"><a href="/police/police-child">Police Child</a></li>
</ol>
</nav>
</div>
Are you looking for this?
.prelative ~ .breadcrumb-section .breadcrumb-item:first-child a::before {
Perhaps also set display: none
, to avoid it allocating the space.
body {
background-color: darkblue;
}
a {
text-decoration: none;
}
.prelative ~ .breadcrumb-section {
z-index: 1000;
}
@media (min-width: 576px) {
.prelative ~ .breadcrumb-section {
padding: 1rem 0;
}
}
.prelative ~ .breadcrumb-section ol {
margin: 0;
padding: 0;
}
.prelative ~ .breadcrumb-section .breadcrumb {
position: absolute;
top: 8%;
display: flex;
list-style-type: none;
padding-left: 1rem;
justify-content: space-between;
}
@media (min-width: 1200px) {
.prelative ~ .breadcrumb-section .breadcrumb {
top: 10%;
padding: 0 2.833rem;
}
}
.prelative ~ .breadcrumb-section .breadcrumb-item {
color: white;
font-weight: weight(regular);
}
.prelative ~ .breadcrumb-section .breadcrumb-item + .breadcrumb-item {
padding-left: 2rem;
}
.prelative ~ .breadcrumb-section .breadcrumb-item + .breadcrumb-item::before {
padding-right: 5rem;
color: white;
}
.prelative ~ .breadcrumb-section .breadcrumb-item:not(:first-child) {
display: none;
}
@media (min-width: 576px) {
.prelative ~ .breadcrumb-section .breadcrumb-item:not(:first-child) {
display: block;
}
}
.prelative ~ .breadcrumb-section .breadcrumb-item a {
color: #fff;
font-weight: 700;
display: flex;
align-items: center;
}
.prelative ~ .breadcrumb-section .breadcrumb-item a::before {
font-weight: 300;
content: "<";
display: inline-block;
padding-right: 0.5rem;
}
@media (min-width: 576px) {
.prelative ~ .breadcrumb-section .breadcrumb-item a::before {
content: "/";
}
.prelative ~ .breadcrumb-section .breadcrumb-item:first-child a::before {
content: "";
}
}
.prelative ~ .breadcrumb-section .breadcrumb-item.active {
display: none;
}
<div class="prelative"></div>
<div class="breadcrumb-section">
<nav aria-label="Full path to the current page" class="breadcrumb-wrapper">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/police">Police</a></li>
<li class="breadcrumb-item"><a href="/police/police-child">Police Child</a></li>
</ol>
</nav>
</div>