discourse/app/assets/stylesheets/common/components/navs.scss

120 lines
2.0 KiB
SCSS

// --------------------------------------------------
// Navigation menus
// --------------------------------------------------
// Base
// --------------------------------------------------
%nav {
margin-left: 0;
list-style: none;
li a {
display: block;
text-decoration: none;
}
}
// Pill nav
// --------------------------------------------------
.nav-pills {
@extend %nav;
@extend .clearfix;
> li {
float: left;
margin-right: 5px;
> a {
border: none;
padding: 6px 12px;
color: $primary;
font-size: $font-up-1;
line-height: $line-height-small;
box-sizing: border-box;
min-height: 30px;
display: flex;
align-items: center;
transition: background 0.15s;
.d-icon {
margin-right: 5px;
opacity: 0.65;
}
&:hover {
color: $quaternary;
background-color: $quaternary-low;
}
}
&.active > a,
> a.active {
color: $secondary;
background-color: $quaternary;
.d-icon {
opacity: 1;
}
}
}
}
// Stacked nav
// --------------------------------------------------
.nav-stacked {
@extend %nav;
padding: 0;
overflow: hidden;
background: $primary-low;
li {
border-bottom: 1px solid $primary-low;
position: relative;
&:last-of-type {
border-bottom: 0;
}
&.indent {
padding-left: 15px;
}
}
a {
margin: 0;
padding: 13px;
font-size: $font-up-1;
line-height: $line-height-small;
cursor: pointer;
color: $primary;
&.active {
color: $secondary;
background-color: $quaternary;
&::after {
left: 90%;
top: 33%;
content: " ";
position: absolute;
border: 8px solid transparent;
border-left-color: $secondary;
}
}
}
.count {
font-size: $font-down-1;
}
.glyph {
font-size: $font-down-1;
width: 1.25em;
text-align: center;
margin-right: 0.25em;
line-height: $line-height-large;
}
}