UNPKG

patternfly

Version:

This reference implementation of PatternFly is based on [Bootstrap v3](http://getbootstrap.com/). Think of PatternFly as a "skinned" version of Bootstrap with additional components and customizations.

529 lines (526 loc) 13.9 kB
// // Vertical navigation // -------------------------------------------------- .layout-pf-fixedafdaf.transitions .nav-pf-vertical { transition: @flyout-transition-pf; &.collapsed .list-group-item .list-group-item-value { transition: opacity 0s .1s, opacity .1s linear; } .list-group-item { .badge { transition: @flyout-transition-pf; } .list-group-item-value { transition: opacity .5s ease-out; transition-delay: .15s; } } } .nav-pf-vertical { background: @nav-pf-vertical-bg-color; border-right: 1px solid @nav-pf-vertical-border-color; bottom: 0; overflow-x: hidden; overflow-y: auto; left: 0; position: fixed; top: @navbar-pf-height; width: @nav-pf-vertical-width; z-index: @zindex-navbar-fixed; .layout-pf-fixed-with-footer & { bottom: @footer-pf-height; } .ie9.layout-pf-fixed & { box-sizing: content-box; // IE9 incorrectly sizes the width if using padding-box } &.collapsed:not(.nav-pf-vertical-with-secondary-nav) { display: none; } &.collapsed { width: @nav-pf-vertical-collapsed-width; &.collapsed-secondary-nav-pf { width: @nav-pf-vertical-secondary-width; } > .list-group { > .list-group-item { > a { margin-right: 0; width: @nav-pf-vertical-collapsed-width; > .list-group-item-value { display: none; width: 0; } } &.persistent-secondary { &.active > a, > a { width: @nav-pf-vertical-collapsed-width; &:after { right: 10px; } } &:hover { > a { width: (@nav-pf-vertical-collapsed-width + 1); z-index: (@zindex-navbar-fixed + 2); &:after { right: 11px; } } } } } } @media (min-width: @screen-lg-min) { > .list-group { > .list-group-item { &.persistent-secondary { &.active > a, > a { width: (@nav-pf-vertical-collapsed-width + 1); } } } } } } &.hidden-icons-pf { width: @nav-pf-vertical-hidden-icons-width; &.collapsed-secondary-nav-pf { width: @nav-pf-vertical-secondary-width; } > .list-group > .list-group-item { > a { width: @nav-pf-vertical-hidden-icons-width; .fa, .glyphicon, .pficon { display: none; } } &.persistent-secondary { &.active, &:hover { > a { width: (@nav-pf-vertical-hidden-icons-width + 1); z-index: (@zindex-navbar-fixed + 2); &:after { right: 21px; } } } } } &.nav-pf-vertical-with-secondary-nav { .nav-pf-persistent-secondary { left: @nav-pf-vertical-hidden-icons-width; &.collapsed-secondary-nav-pf { left: 0; } } &.collapsed { display: none; } &.hover-secondary-nav-pf { width: (@nav-pf-vertical-hidden-icons-width + @nav-pf-vertical-secondary-width); &.collapsed-secondary-nav-pf { width: @nav-pf-vertical-secondary-width; } &.show-mobile-nav { width: @nav-pf-vertical-hidden-icons-width; } } &.collapsed-secondary-nav-pf { width: @nav-pf-vertical-secondary-width; } &.secondary-visible-pf { width: (@nav-pf-vertical-hidden-icons-width + @nav-pf-vertical-secondary-width); &.collapsed-secondary-nav-pf { width: @nav-pf-vertical-secondary-width; } &.show-mobile-nav { width: @nav-pf-vertical-secondary-width; } } } } &.hidden { &.show-mobile-nav { box-shadow: 0 0 3px fade(@color-pf-black, 15%); display: block !important; } > .list-group { > .list-group-item { &.persistent-secondary { &:hover { > a { z-index: @zindex-navbar-fixed; } } } } } } &.nav-pf-vertical-with-secondary-nav { &.collapsed { &.hover-secondary-nav-pf { width: (@nav-pf-vertical-collapsed-width + @nav-pf-vertical-secondary-width); &.collapsed-secondary-nav-pf { width: @nav-pf-vertical-secondary-width; } } } &.hover-secondary-nav-pf { width: (@nav-pf-vertical-width + @nav-pf-vertical-secondary-width); &.collapsed-secondary-nav-pf { width: @nav-pf-vertical-secondary-width; } &.show-mobile-nav { width: @nav-pf-vertical-width; } } &.secondary-visible-pf { width: @nav-pf-vertical-width; &.collapsed { width: @nav-pf-vertical-collapsed-width; } &.show-mobile-nav { width: @nav-pf-vertical-secondary-width; } &.collapsed-secondary-nav-pf { width: @nav-pf-vertical-secondary-width; } @media (min-width: @screen-lg-min) { width: (@nav-pf-vertical-width + @nav-pf-vertical-secondary-width); &.collapsed-secondary-nav-pf { width: @nav-pf-vertical-secondary-width; } &.collapsed { width: @nav-pf-vertical-collapsed-width; &.hover-secondary-nav-pf, &.secondary-visible-pf { width: (@nav-pf-vertical-collapsed-width + @nav-pf-vertical-secondary-width); } &.collapsed-secondary-nav-pf { width: @nav-pf-vertical-secondary-width; } } } } &.collapsed-secondary-nav-pf { > .list-group { > .list-group-item { &.persistent-secondary { &.active, &:hover { > a { z-index: @zindex-navbar-fixed; } } } } } } } .layout-pf-fixed-with-footer & { bottom: @footer-pf-height; } > .list-group { border-top: 0; margin-bottom: 0; > .list-group-item { background-color: transparent; border-color: @nav-pf-vertical-item-border-color; padding: 0; > a { background-color: transparent; color: @nav-pf-vertical-color; display: block; font-size: (@font-size-base + 2); font-weight: @nav-pf-vertical-font-weight; height: @nav-pf-vertical-link-height; outline: 0; padding: @nav-pf-vertical-link-padding; position: relative; white-space: nowrap; width: @nav-pf-vertical-width; .fa, .glyphicon, .pficon { color: @nav-pf-vertical-icon-color; float: left; font-size: (@font-size-base + 2); line-height: 30px; margin-right: 10px; text-align: center; width: @nav-pf-vertical-icon-width; } &:hover, &:focus { text-decoration: none; } } &.active, &:hover { > a { background-color: @nav-pf-vertical-active-bg-color; color: @nav-pf-vertical-active-color; font-weight: @nav-pf-vertical-active-font-weight; .fa, .glyphicon, .pficon { color: @nav-pf-vertical-active-icon-color; } } } &.active { > a { .show-mobile-nav & { z-index: @zindex-navbar-fixed; } } > a:before { background: @nav-pf-vertical-active-before-color; content: " "; height: 100%; left: 0; position: absolute; top: 0; width: 3px; } } .list-group-item-value { display: block; line-height: 30px; max-width: 120px; overflow: hidden; text-overflow: ellipsis; width: 100%; } &.persistent-secondary { > a:after { color: @nav-pf-vertical-secondary-indicator-color; content: "\f105"; display: block; font-family: "FontAwesome"; font-size: (@font-size-base * 2); line-height: 30px; padding: @nav-pf-vertical-secondary-indicator-padding; position: absolute; right: 20px; top: 0; } &.active, &:hover { > a { width: (@nav-pf-vertical-width + 1); z-index: (@zindex-navbar-fixed + 2); &:after { right: 21px; } .collapsed-secondary-nav-pf & { z-index: @zindex-navbar-fixed; } } } } } } .list-group-item-separator { border-top-width: 2px; border-top-color: @nav-pf-vertical-item-border-color; } } .nav-pf-persistent-secondary { background: @nav-pf-vertical-secondary-bg-color; border: 1px solid @nav-pf-vertical-border-color; border-bottom: none; border-top: none; bottom: 0; display: none; left: @nav-pf-vertical-width; overflow-x: hidden; overflow-y: auto; position: fixed; top: @navbar-pf-height; width: @nav-pf-vertical-secondary-width; z-index: @zindex-navbar-fixed; .persistent-secondary.active &, .persistent-secondary.mobile-nav-item-pf & { .secondary-visible-pf & { display: block; } .secondary-visible-pf.collapsed & { display: none; @media (min-width: @screen-lg-min) { display: block; left: @nav-pf-vertical-collapsed-width; .collapsed-secondary-nav-pf & { left: 0; } } } .secondary-visible-pf.collapsed.collapsed-secondary-nav-pf & { @media (min-width: @screen-lg-min) { left: 0; } } .show-mobile-nav & { left: 0; z-index: (@zindex-navbar-fixed + 2); } .collapsed-secondary-nav-pf & { display: block; left: 0; } } .persistent-secondary:hover & { display: block; z-index: (@zindex-navbar-fixed + 1); .collapsed & { left: @nav-pf-vertical-collapsed-width; } .collapsed.collapsed-secondary-nav-pf & { left: 0; @media (min-width: @screen-lg-min) { left: 0; .hidden-icons-pf & { left: 0; } } } } .persistent-secondary:hover & { .secondary-visible-pf.collapsed & { display: block; } } .ie9.layout-pf-fixed & { box-sizing: content-box; // IE9 incorrectly sizes the width if using padding-box } .layout-pf-fixed-with-footer & { bottom: @footer-pf-height; } .persistent-secondary-header { color: @nav-pf-vertical-secondary-color; font-size: (@font-size-base + 4); margin: @nav-pf-vertical-secondary-header-margin; > a { margin-right: 7px; &:hover, &:focus { text-decoration: none; color: @link-color; } } } h5 { color: @nav-pf-vertical-secondary-color; cursor: default; font-size: (@font-size-base + 1); font-weight: 600; margin: @nav-pf-vertical-secondary-list-header-margin; } > .list-group { border-top: 0; margin-bottom: 0; > .list-group-item { background-color: transparent; border: none; padding: @nav-pf-vertical-secondary-item-padding; > a { background-color: transparent; color: @nav-pf-vertical-secondary-item-color; display: block; font-size: @font-size-base; outline: 0; padding: @nav-pf-vertical-secondary-link-padding; position: relative; white-space: nowrap; &:hover { > .list-group-item-value { color: @nav-pf-vertical-active-color; text-decoration: underline; } } } &.active { .list-group-item-value { background-color: @nav-pf-vertical-secondary-active-bg-color; color: @nav-pf-vertical-active-color; } .fa, .glyphicon, .pficon { color: @nav-pf-vertical-active-icon-color; } } .badge-container-pf { background-color: @nav-pf-vertical-secondary-badge-bg-color; position: absolute; right: 15px; top: 0; .badge { background: @nav-pf-vertical-secondary-badge-bg-color; color: @nav-pf-vertical-badge-color; font-size: @font-size-base; font-weight: 700; float: left; line-height: @line-height-base; margin: 0; padding: 0 7px; text-align: center; .pficon, .fa { font-size: (@font-size-base + 2); height: 20px; line-height: @line-height-base; margin-right: 3px; margin-top: -1px; } } } .fa, .glyphicon, .pficon { float: left; font-size: 18px; line-height: 30px; margin-right: 10px; text-align: center; width: 18px; } .list-group-item-value { display: inline-block; line-height: 20px; max-width: none; opacity: 1; overflow: hidden; padding-left: 5px; text-overflow: ellipsis; } } } .secondary-collapse-toggle-pf { display: inline-block; font-family: @icon-font-name-fa; font-size: inherit; -webkit-font-smoothing: antialiased; &:before { content: '\f190'; } &.collapsed { &:before { content: '\f18e'; } } } } .show-mobile-nav { .persistent-secondary:hover { .nav-pf-persistent-secondary { display: none; } } .persistent-secondary.mobile-nav-item-pf:hover { .nav-pf-persistent-secondary { display: block; } } } .force-hide-secondary-nav-pf { .persistent-secondary { .nav-pf-persistent-secondary { display: none !important; } } }