diff options
Diffstat (limited to 'bower_components/bootstrap/less/navbar.less')
| -rw-r--r-- | bower_components/bootstrap/less/navbar.less | 616 | 
1 files changed, 616 insertions, 0 deletions
| diff --git a/bower_components/bootstrap/less/navbar.less b/bower_components/bootstrap/less/navbar.less new file mode 100644 index 0000000..8c4c210 --- /dev/null +++ b/bower_components/bootstrap/less/navbar.less @@ -0,0 +1,616 @@ +// +// Navbars +// -------------------------------------------------- + + +// Wrapper and base class +// +// Provide a static navbar from which we expand to create full-width, fixed, and +// other navbar variations. + +.navbar { +  position: relative; +  min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode) +  margin-bottom: @navbar-margin-bottom; +  border: 1px solid transparent; + +  // Prevent floats from breaking the navbar +  &:extend(.clearfix all); + +  @media (min-width: @grid-float-breakpoint) { +    border-radius: @navbar-border-radius; +  } +} + + +// Navbar heading +// +// Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy +// styling of responsive aspects. + +.navbar-header { +  &:extend(.clearfix all); + +  @media (min-width: @grid-float-breakpoint) { +    float: left; +  } +} + + +// Navbar collapse (body) +// +// Group your navbar content into this for easy collapsing and expanding across +// various device sizes. By default, this content is collapsed when <768px, but +// will expand past that for a horizontal display. +// +// To start (on mobile devices) the navbar links, forms, and buttons are stacked +// vertically and include a `max-height` to overflow in case you have too much +// content for the user's viewport. + +.navbar-collapse { +  max-height: @navbar-collapse-max-height; +  overflow-x: visible; +  padding-right: @navbar-padding-horizontal; +  padding-left:  @navbar-padding-horizontal; +  border-top: 1px solid transparent; +  box-shadow: inset 0 1px 0 rgba(255,255,255,.1); +  &:extend(.clearfix all); +  -webkit-overflow-scrolling: touch; + +  &.in { +    overflow-y: auto; +  } + +  @media (min-width: @grid-float-breakpoint) { +    width: auto; +    border-top: 0; +    box-shadow: none; + +    &.collapse { +      display: block !important; +      height: auto !important; +      padding-bottom: 0; // Override default setting +      overflow: visible !important; +    } + +    &.in { +      overflow-y: visible; +    } + +    // Undo the collapse side padding for navbars with containers to ensure +    // alignment of right-aligned contents. +    .navbar-fixed-top &, +    .navbar-static-top &, +    .navbar-fixed-bottom & { +      padding-left: 0; +      padding-right: 0; +    } +  } +} + + +// Both navbar header and collapse +// +// When a container is present, change the behavior of the header and collapse. + +.container, +.container-fluid { +  > .navbar-header, +  > .navbar-collapse { +    margin-right: -@navbar-padding-horizontal; +    margin-left:  -@navbar-padding-horizontal; + +    @media (min-width: @grid-float-breakpoint) { +      margin-right: 0; +      margin-left:  0; +    } +  } +} + + +// +// Navbar alignment options +// +// Display the navbar across the entirety of the page or fixed it to the top or +// bottom of the page. + +// Static top (unfixed, but 100% wide) navbar +.navbar-static-top { +  z-index: @zindex-navbar; +  border-width: 0 0 1px; + +  @media (min-width: @grid-float-breakpoint) { +    border-radius: 0; +  } +} + +// Fix the top/bottom navbars when screen real estate supports it +.navbar-fixed-top, +.navbar-fixed-bottom { +  position: fixed; +  right: 0; +  left: 0; +  z-index: @zindex-navbar-fixed; + +  // Undo the rounded corners +  @media (min-width: @grid-float-breakpoint) { +    border-radius: 0; +  } +} +.navbar-fixed-top { +  top: 0; +  border-width: 0 0 1px; +} +.navbar-fixed-bottom { +  bottom: 0; +  margin-bottom: 0; // override .navbar defaults +  border-width: 1px 0 0; +} + + +// Brand/project name + +.navbar-brand { +  float: left; +  padding: @navbar-padding-vertical @navbar-padding-horizontal; +  font-size: @font-size-large; +  line-height: @line-height-computed; +  height: @navbar-height; + +  &:hover, +  &:focus { +    text-decoration: none; +  } + +  @media (min-width: @grid-float-breakpoint) { +    .navbar > .container &, +    .navbar > .container-fluid & { +      margin-left: -@navbar-padding-horizontal; +    } +  } +} + + +// Navbar toggle +// +// Custom button for toggling the `.navbar-collapse`, powered by the collapse +// JavaScript plugin. + +.navbar-toggle { +  position: relative; +  float: right; +  margin-right: @navbar-padding-horizontal; +  padding: 9px 10px; +  .navbar-vertical-align(34px); +  background-color: transparent; +  background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 +  border: 1px solid transparent; +  border-radius: @border-radius-base; + +  // We remove the `outline` here, but later compensate by attaching `:hover` +  // styles to `:focus`. +  &:focus { +    outline: none; +  } + +  // Bars +  .icon-bar { +    display: block; +    width: 22px; +    height: 2px; +    border-radius: 1px; +  } +  .icon-bar + .icon-bar { +    margin-top: 4px; +  } + +  @media (min-width: @grid-float-breakpoint) { +    display: none; +  } +} + + +// Navbar nav links +// +// Builds on top of the `.nav` components with its own modifier class to make +// the nav the full height of the horizontal nav (above 768px). + +.navbar-nav { +  margin: (@navbar-padding-vertical / 2) -@navbar-padding-horizontal; + +  > li > a { +    padding-top:    10px; +    padding-bottom: 10px; +    line-height: @line-height-computed; +  } + +  @media (max-width: @grid-float-breakpoint-max) { +    // Dropdowns get custom display when collapsed +    .open .dropdown-menu { +      position: static; +      float: none; +      width: auto; +      margin-top: 0; +      background-color: transparent; +      border: 0; +      box-shadow: none; +      > li > a, +      .dropdown-header { +        padding: 5px 15px 5px 25px; +      } +      > li > a { +        line-height: @line-height-computed; +        &:hover, +        &:focus { +          background-image: none; +        } +      } +    } +  } + +  // Uncollapse the nav +  @media (min-width: @grid-float-breakpoint) { +    float: left; +    margin: 0; + +    > li { +      float: left; +      > a { +        padding-top:    @navbar-padding-vertical; +        padding-bottom: @navbar-padding-vertical; +      } +    } + +    &.navbar-right:last-child { +      margin-right: -@navbar-padding-horizontal; +    } +  } +} + + +// Component alignment +// +// Repurpose the pull utilities as their own navbar utilities to avoid specificity +// issues with parents and chaining. Only do this when the navbar is uncollapsed +// though so that navbar contents properly stack and align in mobile. + +@media (min-width: @grid-float-breakpoint) { +  .navbar-left  { .pull-left(); } +  .navbar-right { .pull-right(); } +} + + +// Navbar form +// +// Extension of the `.form-inline` with some extra flavor for optimum display in +// our navbars. + +.navbar-form { +  margin-left: -@navbar-padding-horizontal; +  margin-right: -@navbar-padding-horizontal; +  padding: 10px @navbar-padding-horizontal; +  border-top: 1px solid transparent; +  border-bottom: 1px solid transparent; +  @shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1); +  .box-shadow(@shadow); + +  // Mixin behavior for optimum display +  .form-inline(); + +  .form-group { +    @media (max-width: @grid-float-breakpoint-max) { +      margin-bottom: 5px; +    } +  } + +  // Vertically center in expanded, horizontal navbar +  .navbar-vertical-align(@input-height-base); + +  // Undo 100% width for pull classes +  @media (min-width: @grid-float-breakpoint) { +    width: auto; +    border: 0; +    margin-left: 0; +    margin-right: 0; +    padding-top: 0; +    padding-bottom: 0; +    .box-shadow(none); + +    // Outdent the form if last child to line up with content down the page +    &.navbar-right:last-child { +      margin-right: -@navbar-padding-horizontal; +    } +  } +} + + +// Dropdown menus + +// Menu position and menu carets +.navbar-nav > li > .dropdown-menu { +  margin-top: 0; +  .border-top-radius(0); +} +// Menu position and menu caret support for dropups via extra dropup class +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { +  .border-bottom-radius(0); +} + + +// Buttons in navbars +// +// Vertically center a button within a navbar (when *not* in a form). + +.navbar-btn { +  .navbar-vertical-align(@input-height-base); + +  &.btn-sm { +    .navbar-vertical-align(@input-height-small); +  } +  &.btn-xs { +    .navbar-vertical-align(22); +  } +} + + +// Text in navbars +// +// Add a class to make any element properly align itself vertically within the navbars. + +.navbar-text { +  .navbar-vertical-align(@line-height-computed); + +  @media (min-width: @grid-float-breakpoint) { +    float: left; +    margin-left: @navbar-padding-horizontal; +    margin-right: @navbar-padding-horizontal; + +    // Outdent the form if last child to line up with content down the page +    &.navbar-right:last-child { +      margin-right: 0; +    } +  } +} + +// Alternate navbars +// -------------------------------------------------- + +// Default navbar +.navbar-default { +  background-color: @navbar-default-bg; +  border-color: @navbar-default-border; + +  .navbar-brand { +    color: @navbar-default-brand-color; +    &:hover, +    &:focus { +      color: @navbar-default-brand-hover-color; +      background-color: @navbar-default-brand-hover-bg; +    } +  } + +  .navbar-text { +    color: @navbar-default-color; +  } + +  .navbar-nav { +    > li > a { +      color: @navbar-default-link-color; + +      &:hover, +      &:focus { +        color: @navbar-default-link-hover-color; +        background-color: @navbar-default-link-hover-bg; +      } +    } +    > .active > a { +      &, +      &:hover, +      &:focus { +        color: @navbar-default-link-active-color; +        background-color: @navbar-default-link-active-bg; +      } +    } +    > .disabled > a { +      &, +      &:hover, +      &:focus { +        color: @navbar-default-link-disabled-color; +        background-color: @navbar-default-link-disabled-bg; +      } +    } +  } + +  .navbar-toggle { +    border-color: @navbar-default-toggle-border-color; +    &:hover, +    &:focus { +      background-color: @navbar-default-toggle-hover-bg; +    } +    .icon-bar { +      background-color: @navbar-default-toggle-icon-bar-bg; +    } +  } + +  .navbar-collapse, +  .navbar-form { +    border-color: @navbar-default-border; +  } + +  // Dropdown menu items +  .navbar-nav { +    // Remove background color from open dropdown +    > .open > a { +      &, +      &:hover, +      &:focus { +        background-color: @navbar-default-link-active-bg; +        color: @navbar-default-link-active-color; +      } +    } + +    @media (max-width: @grid-float-breakpoint-max) { +      // Dropdowns get custom display when collapsed +      .open .dropdown-menu { +        > li > a { +          color: @navbar-default-link-color; +          &:hover, +          &:focus { +            color: @navbar-default-link-hover-color; +            background-color: @navbar-default-link-hover-bg; +          } +        } +        > .active > a { +          &, +          &:hover, +          &:focus { +            color: @navbar-default-link-active-color; +            background-color: @navbar-default-link-active-bg; +          } +        } +        > .disabled > a { +          &, +          &:hover, +          &:focus { +            color: @navbar-default-link-disabled-color; +            background-color: @navbar-default-link-disabled-bg; +          } +        } +      } +    } +  } + + +  // Links in navbars +  // +  // Add a class to ensure links outside the navbar nav are colored correctly. + +  .navbar-link { +    color: @navbar-default-link-color; +    &:hover { +      color: @navbar-default-link-hover-color; +    } +  } + +} + +// Inverse navbar + +.navbar-inverse { +  background-color: @navbar-inverse-bg; +  border-color: @navbar-inverse-border; + +  .navbar-brand { +    color: @navbar-inverse-brand-color; +    &:hover, +    &:focus { +      color: @navbar-inverse-brand-hover-color; +      background-color: @navbar-inverse-brand-hover-bg; +    } +  } + +  .navbar-text { +    color: @navbar-inverse-color; +  } + +  .navbar-nav { +    > li > a { +      color: @navbar-inverse-link-color; + +      &:hover, +      &:focus { +        color: @navbar-inverse-link-hover-color; +        background-color: @navbar-inverse-link-hover-bg; +      } +    } +    > .active > a { +      &, +      &:hover, +      &:focus { +        color: @navbar-inverse-link-active-color; +        background-color: @navbar-inverse-link-active-bg; +      } +    } +    > .disabled > a { +      &, +      &:hover, +      &:focus { +        color: @navbar-inverse-link-disabled-color; +        background-color: @navbar-inverse-link-disabled-bg; +      } +    } +  } + +  // Darken the responsive nav toggle +  .navbar-toggle { +    border-color: @navbar-inverse-toggle-border-color; +    &:hover, +    &:focus { +      background-color: @navbar-inverse-toggle-hover-bg; +    } +    .icon-bar { +      background-color: @navbar-inverse-toggle-icon-bar-bg; +    } +  } + +  .navbar-collapse, +  .navbar-form { +    border-color: darken(@navbar-inverse-bg, 7%); +  } + +  // Dropdowns +  .navbar-nav { +    > .open > a { +      &, +      &:hover, +      &:focus { +        background-color: @navbar-inverse-link-active-bg; +        color: @navbar-inverse-link-active-color; +      } +    } + +    @media (max-width: @grid-float-breakpoint-max) { +      // Dropdowns get custom display +      .open .dropdown-menu { +        > .dropdown-header { +          border-color: @navbar-inverse-border; +        } +        .divider { +          background-color: @navbar-inverse-border; +        } +        > li > a { +          color: @navbar-inverse-link-color; +          &:hover, +          &:focus { +            color: @navbar-inverse-link-hover-color; +            background-color: @navbar-inverse-link-hover-bg; +          } +        } +        > .active > a { +          &, +          &:hover, +          &:focus { +            color: @navbar-inverse-link-active-color; +            background-color: @navbar-inverse-link-active-bg; +          } +        } +        > .disabled > a { +          &, +          &:hover, +          &:focus { +            color: @navbar-inverse-link-disabled-color; +            background-color: @navbar-inverse-link-disabled-bg; +          } +        } +      } +    } +  } + +  .navbar-link { +    color: @navbar-inverse-link-color; +    &:hover { +      color: @navbar-inverse-link-hover-color; +    } +  } + +} | 
