forked from unitoo/website
332 lines
8 KiB
SCSS
332 lines
8 KiB
SCSS
// Contents
|
|
//
|
|
// Navbar
|
|
// Navbar brand
|
|
// Navbar nav
|
|
// Navbar text
|
|
// Navbar divider
|
|
// Responsive navbar
|
|
// Navbar position
|
|
// Navbar themes
|
|
|
|
|
|
// Navbar
|
|
//
|
|
// Provide a static navbar from which we expand to create full-width, fixed, and
|
|
// other navbar variations.
|
|
|
|
.navbar {
|
|
position: relative;
|
|
display: flex;
|
|
flex-wrap: wrap; // allow us to do the line break for collapsing content
|
|
align-items: center;
|
|
justify-content: space-between; // space out brand from logo
|
|
padding: $navbar-padding-y $navbar-padding-x;
|
|
|
|
// Because flex properties aren't inherited, we need to redeclare these first
|
|
// few properties so that content nested within behave properly.
|
|
%container-flex-properties {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
.container,
|
|
.container-fluid {
|
|
@extend %container-flex-properties;
|
|
}
|
|
|
|
@each $breakpoint, $container-max-width in $container-max-widths {
|
|
> .container#{breakpoint-infix($breakpoint, $container-max-widths)} {
|
|
@extend %container-flex-properties;
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
// Navbar brand
|
|
//
|
|
// Used for brand, project, or site names.
|
|
|
|
// .navbar-brand {
|
|
// display: inline-block;
|
|
// padding-top: $navbar-brand-padding-y;
|
|
// padding-bottom: $navbar-brand-padding-y;
|
|
// margin-right: $navbar-padding-x;
|
|
// @include font-size($navbar-brand-font-size);
|
|
// line-height: inherit;
|
|
// white-space: nowrap;
|
|
|
|
// @include hover-focus() {
|
|
// text-decoration: none;
|
|
// }
|
|
// }
|
|
|
|
|
|
// Navbar nav
|
|
//
|
|
// Custom navbar navigation (doesn't require `.nav`, but does make use of `.nav-link`).
|
|
|
|
// .navbar-nav {
|
|
// display: flex;
|
|
// flex-direction: column; // cannot use `inherit` to get the `.navbar`s value
|
|
// padding-left: 0;
|
|
// margin-bottom: 0;
|
|
// list-style: none;
|
|
|
|
// .nav-link {
|
|
// padding-right: 0;
|
|
// padding-left: 0;
|
|
// }
|
|
|
|
// .dropdown-menu {
|
|
// position: static;
|
|
// float: none;
|
|
// }
|
|
// }
|
|
|
|
|
|
// Navbar text
|
|
//
|
|
//
|
|
|
|
// .navbar-text {
|
|
// display: inline-block;
|
|
// padding-top: $nav-link-padding-y;
|
|
// padding-bottom: $nav-link-padding-y;
|
|
// }
|
|
|
|
|
|
// Responsive navbar
|
|
//
|
|
// Custom styles for responsive collapsing and toggling of navbar contents.
|
|
// Powered by the collapse Bootstrap JavaScript plugin.
|
|
|
|
// When collapsed, prevent the toggleable navbar contents from appearing in
|
|
// the default flexbox row orientation. Requires the use of `flex-wrap: wrap`
|
|
// on the `.navbar` parent.
|
|
// .navbar-collapse {
|
|
// flex-basis: 100%;
|
|
// flex-grow: 1;
|
|
// // For always expanded or extra full navbars, ensure content aligns itself
|
|
// // properly vertically. Can be easily overridden with flex utilities.
|
|
// align-items: center;
|
|
// }
|
|
|
|
// Button for toggling the navbar when in its collapsed state
|
|
// .navbar-toggler {
|
|
// padding: $navbar-toggler-padding-y $navbar-toggler-padding-x;
|
|
// @include font-size($navbar-toggler-font-size);
|
|
// line-height: 1;
|
|
// background-color: transparent; // remove default button style
|
|
// border: $border-width solid transparent; // remove default button style
|
|
// @include border-radius($navbar-toggler-border-radius);
|
|
|
|
// @include hover-focus() {
|
|
// text-decoration: none;
|
|
// }
|
|
// }
|
|
|
|
// Keep as a separate element so folks can easily override it with another icon
|
|
// or image file as needed.
|
|
// .navbar-toggler-icon {
|
|
// display: inline-block;
|
|
// width: 1.5em;
|
|
// height: 1.5em;
|
|
// vertical-align: middle;
|
|
// content: "";
|
|
// background: 50% / 100% 100% no-repeat;
|
|
// }
|
|
|
|
// .navbar-nav-scroll {
|
|
// max-height: $navbar-nav-scroll-max-height;
|
|
// overflow-y: auto;
|
|
// }
|
|
|
|
// Generate series of `.navbar-expand-*` responsive classes for configuring
|
|
// where your navbar collapses.
|
|
// .navbar-expand {
|
|
// @each $breakpoint in map-keys($grid-breakpoints) {
|
|
// $next: breakpoint-next($breakpoint, $grid-breakpoints);
|
|
// $infix: breakpoint-infix($next, $grid-breakpoints);
|
|
|
|
// &#{$infix} {
|
|
// @include media-breakpoint-down($breakpoint) {
|
|
// %container-navbar-expand-#{$breakpoint} {
|
|
// padding-right: 0;
|
|
// padding-left: 0;
|
|
// }
|
|
|
|
// > .container,
|
|
// > .container-fluid {
|
|
// @extend %container-navbar-expand-#{$breakpoint};
|
|
// }
|
|
|
|
// @each $size, $container-max-width in $container-max-widths {
|
|
// > .container#{breakpoint-infix($size, $container-max-widths)} {
|
|
// @extend %container-navbar-expand-#{$breakpoint};
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
// @include media-breakpoint-up($next) {
|
|
// flex-flow: row nowrap;
|
|
// justify-content: flex-start;
|
|
|
|
// .navbar-nav {
|
|
// flex-direction: row;
|
|
|
|
// .dropdown-menu {
|
|
// position: absolute;
|
|
// }
|
|
|
|
// .nav-link {
|
|
// padding-right: $navbar-nav-link-padding-x;
|
|
// padding-left: $navbar-nav-link-padding-x;
|
|
// }
|
|
// }
|
|
|
|
// // For nesting containers, have to redeclare for alignment purposes
|
|
// %container-nesting-#{$breakpoint} {
|
|
// flex-wrap: nowrap;
|
|
// }
|
|
|
|
// > .container,
|
|
// > .container-fluid {
|
|
// @extend %container-nesting-#{$breakpoint};
|
|
// }
|
|
|
|
// @each $size, $container-max-width in $container-max-widths {
|
|
// > .container#{breakpoint-infix($size, $container-max-widths)} {
|
|
// @extend %container-nesting-#{$breakpoint};
|
|
// }
|
|
// }
|
|
|
|
// .navbar-nav-scroll {
|
|
// overflow: visible;
|
|
// }
|
|
|
|
// .navbar-collapse {
|
|
// display: flex !important; // stylelint-disable-line declaration-no-important
|
|
|
|
// // Changes flex-bases to auto because of an IE10 bug
|
|
// flex-basis: auto;
|
|
// }
|
|
|
|
// .navbar-toggler {
|
|
// display: none;
|
|
// }
|
|
// }
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
|
|
// Navbar themes
|
|
//
|
|
// Styles for switching between navbars with light or dark background.
|
|
|
|
// Dark links against a light background
|
|
// .navbar-light {
|
|
// .navbar-brand {
|
|
// color: $navbar-light-brand-color;
|
|
|
|
// @include hover-focus() {
|
|
// color: $navbar-light-brand-hover-color;
|
|
// }
|
|
// }
|
|
|
|
// .navbar-nav {
|
|
// .nav-link {
|
|
// color: $navbar-light-color;
|
|
|
|
// @include hover-focus() {
|
|
// color: $navbar-light-hover-color;
|
|
// }
|
|
|
|
// &.disabled {
|
|
// color: $navbar-light-disabled-color;
|
|
// }
|
|
// }
|
|
|
|
// .show > .nav-link,
|
|
// .active > .nav-link,
|
|
// .nav-link.show,
|
|
// .nav-link.active {
|
|
// color: $navbar-light-active-color;
|
|
// }
|
|
// }
|
|
|
|
// .navbar-toggler {
|
|
// color: $navbar-light-color;
|
|
// border-color: $navbar-light-toggler-border-color;
|
|
// }
|
|
|
|
// .navbar-toggler-icon {
|
|
// background-image: escape-svg($navbar-light-toggler-icon-bg);
|
|
// }
|
|
|
|
// .navbar-text {
|
|
// color: $navbar-light-color;
|
|
// a {
|
|
// color: $navbar-light-active-color;
|
|
|
|
// @include hover-focus() {
|
|
// color: $navbar-light-active-color;
|
|
// }
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
// // White links against a dark background
|
|
// .navbar-dark {
|
|
// .navbar-brand {
|
|
// color: $navbar-dark-brand-color;
|
|
|
|
// @include hover-focus() {
|
|
// color: $navbar-dark-brand-hover-color;
|
|
// }
|
|
// }
|
|
|
|
// .navbar-nav {
|
|
// .nav-link {
|
|
// color: $navbar-dark-color;
|
|
|
|
// @include hover-focus() {
|
|
// color: $navbar-dark-hover-color;
|
|
// }
|
|
|
|
// &.disabled {
|
|
// color: $navbar-dark-disabled-color;
|
|
// }
|
|
// }
|
|
|
|
// .show > .nav-link,
|
|
// .active > .nav-link,
|
|
// .nav-link.show,
|
|
// .nav-link.active {
|
|
// color: $navbar-dark-active-color;
|
|
// }
|
|
// }
|
|
|
|
// .navbar-toggler {
|
|
// color: $navbar-dark-color;
|
|
// border-color: $navbar-dark-toggler-border-color;
|
|
// }
|
|
|
|
// .navbar-toggler-icon {
|
|
// background-image: escape-svg($navbar-dark-toggler-icon-bg);
|
|
// }
|
|
|
|
// .navbar-text {
|
|
// color: $navbar-dark-color;
|
|
// a {
|
|
// color: $navbar-dark-active-color;
|
|
|
|
// @include hover-focus() {
|
|
// color: $navbar-dark-active-color;
|
|
// }
|
|
// }
|
|
// }
|
|
// }
|