@import '../base/grid-settings'; @import 'neat/neat'; // lib - Neat header.global { @extend %ui-depth1; border-bottom: 1px solid $m-gray; box-shadow: 0 1px 5px 0 $shadow-l1; background: $header-bg; height: 76px; position: relative; width: 100%; .wrapper-header { @include clearfix(); height: 40px; margin: 0 auto; padding: 18px ($baseline/2) 0; max-width: grid-width(12); width: 100%; } h1.logo { @include float(left); @include margin(-2px, 39px, 0, 0); position: relative; a { display: block; } } nav { @include clearfix(); height: 40px; margin: 0 auto; padding: 18px ($baseline/2) 0; max-width: grid-width(12); min-width: 760px; } .left { @include float(left); } .guest { @include float(right); } > li { display: inline-block; margin-right: $baseline; position: relative; vertical-align: middle; &:last-child { margin-right: 0; } a { letter-spacing: 1px; vertical-align: middle; } } li.secondary { > a { color: $link-color; display: block; font-family: $sans-serif; display: inline-block; margin: 0 ($baseline*1.5) 0 0; text-decoration: none; text-transform: uppercase; text-shadow: 0 1px rgba(255,255,255, 0.6); &:last-child { margin-right: 0; } &:hover, &:focus { color: $base-font-color; } } } .primary { margin-right: ($baseline/4); > a { @include background-image($button-bg-image); background-color: $button-bg-color; border: 1px solid $border-color-2; border-radius: 3px; @include box-sizing(border-box); box-shadow: 0 1px 0 0 rgba(255,255,255, 0.6); color: $base-font-color; display: inline-block; font-family: $sans-serif; display: inline-block; line-height: 1em; margin: 1px 5px; padding: 10px 12px; text-decoration: none; text-transform: uppercase; text-shadow: 0 1px rgba(255,255,255, 0.6); vertical-align: middle; &:last-child { margin-right: 0; } &:hover, &:focus, &:active { background: $button-bg-hover-color; } } } .user { @include float(right); margin-top: ($baseline/4); > .primary { display: block; @include float(left); margin: 0; position: relative; > a { margin: 0; @include border-right-radius(0px); background-image: none; } &:last-child { > a { @include border-radius(0, 4px, 4px, 0); @include border-left(none); padding: ($baseline/4) 8px 11px ($baseline/2); &.shopping-cart { border-radius: 4px; border: 1px solid $border-color-2; @include margin-right(10px); padding-bottom: 6px; } } } } a.user-link { @include padding(5px, 12px, 10px, 10px); position: relative; text-transform: none; font-size: 14px; font-weight: bold; letter-spacing: 0; .icon { display: inline-block; @include float(left); @include margin(2px, 6px, -3px, 3px); font-size: 1.2em; color: $m-gray; } .avatar { // CASE: right to left layout display: inline-block; @include left(8px); opacity: 0.5; overflow: hidden; top: 4px; margin-top: 1px; margin-right: 2px; @include transition(all 0.15s linear 0s); width: 19px; } div { margin-top: 3px; float: right; margin-left: 4px; } div { margin-top: 3px; float: right; margin-left: 4px; } &:hover, &:focus { .avatar { opacity: 0.8; } } } .dropdown-menu { background: $white; border-radius: 4px; box-shadow: 0 2px 2px 0 rgba(0,0,0, 0.3); border: 1px solid $gray-l3; display: none; margin-top: 0; padding: 5px 10px; position: absolute; @include right(0px); top: 37px; min-width: 120px; z-index: 3; &.expanded { display: block; } &::before { background: transparent; border: { top: 6px solid $border-color-4; right: 6px solid $border-color-4; bottom: 6px solid transparent; left: 6px solid transparent; } box-shadow: 1px 0 0 0 $gray-l3, 0 -1px 0 0 $gray-l3; content: ""; display: block; height: 0px; position: absolute; @include transform(rotate(-45deg)); @include right(7px); top: -5px; width: 0px; } li { display: block; border-top: 1px dotted $border-color-2; box-shadow: inset 0 1px 0 0 rgba(255,255,255, 0.05); &:first-child { border: none; box-shadow: none; } > a { border: 1px solid transparent; border-radius: 3px; @include box-sizing(border-box); color: $link-color; cursor: pointer; display: block; margin: 5px 0px; overflow: hidden; padding: 3px 5px 4px; text-overflow: ellipsis; @include transition(padding 0.15s linear 0s); white-space: nowrap; width: 100%; &:hover, &:focus { color: $base-font-color; text-decoration: none; } } } } } .nav-global { margin-top: ($baseline/2); list-style: none; @include float(left); li, div { display: inline-block; margin: 0 $baseline+1 0 0; font-size: em(14); font-weight: 600; text-transform: uppercase; letter-spacing: 0 !important; &:last-child { margin-right: 0; } a { display:block; padding: ($baseline/4); color: $lighter-base-font-color; font-weight: 600; &:hover, &:focus, &:active { text-decoration: none; color: $link-color; } } &.active { a { text-decoration: none; color: $link-color; } } } // logged in &.authenticated { } } .nav-courseware { @include float(right); margin-top: ($baseline/4); list-style: none; li, div { display: inline-block; .cta { @extend %m-btn-primary; } } } } // marketing site design syncing .view-register, .view-login, .view-passwordreset { header.global nav { width: 960px; } } // page-based nav states .view-howitworks .nav-global-01, .view-courses .nav-global-02, .view-schools .nav-global-03, .view-register .nav-global-04 { a { text-decoration: none; color: $link-color !important; } } // edX theme: Global Header // ==================== // CASE: marketing/course discovery header.global-new { @extend %ui-depth1; /* Temp. fix until applied globally */ @include box-sizing(border-box); position: relative; width: 100%; border-bottom: 4px solid $courseware-border-bottom-color; box-shadow: 0 1px 5px 0 $shadow-l1; background: $header-bg; .wrapper-header { @include clearfix(); @include box-sizing(border-box); height: 74px; margin: 0 auto; padding: 17px 0; max-width: grid-width(12); &:not(.rwd) { min-width: grid-width(9); } } h1.logo { @include float(left); margin: -2px 39px 0 10px; position: relative; a { display: block; } } .nav-global { @include float(left); } .nav-account-management { margin: 0 auto; } .guest { @include float(right); } > li { display: inline-block; margin-right: $baseline; position: relative; vertical-align: middle; &:last-child { margin-right: 0; } a { vertical-align: middle; } } li.secondary { > a { color: $link-color; font-family: $sans-serif; display: inline-block; margin: 0 ($baseline*1.5) 0 0; text-decoration: none; text-transform: uppercase; text-shadow: 0 1px rgba(255,255,255, 0.6); &:last-child { margin-right: 0; } &:hover, &:focus { color: $base-font-color; } } } .primary { @include margin-right(5px); > a { @include background-image($button-bg-image); background-color: $button-bg-color; border: 1px solid $border-color-2; border-radius: 3px; @include box-sizing(border-box); box-shadow: 0 1px 0 0 rgba(255,255,255, 0.6); color: $base-font-color; font-family: $header-sans-serif; display: inline-block; line-height: 1em; margin: 1px 5px; padding: 10px 12px; text-decoration: none; text-transform: uppercase; text-shadow: 0 1px rgba(255,255,255, 0.6); vertical-align: middle; &:last-child { @include margin-right(0); } &:hover, &:focus, &:active { background: $button-bg-hover-color; } } } .user { @include float(right); margin-top: 4px; > .primary { display: block; @include float(left); margin: 0; position: relative; > a { margin: 0; @include border-right-radius(0); background-image: none; } &:last-child { > a { @include border-radius(0, 4px, 4px, 0); @include border-left(none); padding: 5px 8px 7px 8px; &.shopping-cart { border-radius: 4px; border: 1px solid $border-color-2; margin-right: ($baseline/2); padding-bottom: 6px; } } } } a.user-link { @include padding(3px, 12px, 8px, 8px); position: relative; text-transform: none; font-size: 14px; font-weight: bold; letter-spacing: 0; .icon { display: inline-block; @include float(left); @include margin(2px, 6px, -3px, 3px); font-size: 1.2em; color: $m-gray; } .avatar { // CASE: right to left layout display: inline-block; @include left(8px); opacity: 0.5; overflow: hidden; top: 4px; margin-top: 1px; margin-right: 2px; @include transition(all 0.15s linear 0s); width: 19px; } div { margin-top: 3px; float: right; margin-left: 4px; } div { margin-top: 3px; float: right; margin-left: 4px; } &:hover, &:focus { .avatar { opacity: 0.8; } } } .dropdown-menu { background: $border-color-4; border-radius: 4px; box-shadow: 0 2px 24px 0 rgba(0,0,0, 0.3); border: 1px solid $border-color-3; display: none; margin-top: 0; padding: 5px 10px; position: absolute; @include right(0); top: 34px; width: 170px; z-index: 3; &.expanded { display: block; } &::before { background: transparent; border: { top: 6px solid $border-color-4; right: 6px solid $border-color-4; bottom: 6px solid transparent; left: 6px solid transparent; } box-shadow: 1px 0 0 0 $border-color-3, 0 -1px 0 0 $border-color-3; content: ""; display: block; height: 0px; position: absolute; @include transform(rotate(-45deg)); @include right(7px); top: -6px; width: 0px; } li { display: block; border-top: 1px solid $gray-l3; box-shadow: inset 0 1px 0 0 rgba(255,255,255, 0.05); &:first-child { border: none; box-shadow: none; } > a { border: 1px solid transparent; border-radius: 3px; @include box-sizing(border-box); color: $link-color; cursor: pointer; display: block; margin: 5px 0px; overflow: hidden; padding: 3px 5px 4px; text-overflow: ellipsis; @include transition(padding 0.15s linear 0s); white-space: nowrap; width: 100%; &:hover, &:focus { color: $base-font-color; text-decoration: none; } } } } } %default-header-nav { margin-top: ($baseline/4); list-style: none; @include float(left); li, div { display: inline-block; margin: 0; text-transform: uppercase; letter-spacing: 0 !important; a { display:block; padding: 3px 10px; font-size: 18px; line-height: 24px; font-weight: 600; font-family: $header-sans-serif; color: $courseware-navigation-color; &:hover, &:focus { text-decoration: none; color: $courseware-hover-color; } } } } .nav-global { @extend %default-header-nav; } .nav-courseware { @extend %default-header-nav; @include float(right); div { display: inline-block; text-transform: uppercase; letter-spacing: 0!important; position: relative; &:last-child { margin-right: ($baseline/2); } a { &.nav-courseware-button { border: 3px solid $courseware-button-border-color; border-radius: 5px; margin-top: -22px; &:hover, &:focus, &:active { border-color: $courseware-navigation-color; } .view-login &:hover, &:focus, &:active { border-color: $courseware-button-border-color; } } } } } &.rwd { .wrapper-header { width: 320px; } .mobile-menu-button { @include float(left); display: inline; text-decoration: none; color: $m-gray; font-size: 18px; margin-top: 9px; &:hover, &:active, &:focus { text-decoration: none; } } .logo { position: absolute; top: 20px; @include left(calc(50% - 90px)); width: 54px; img { width: 54px; } } .nav-global, .nav-courseware { a { font-size: 14px; &.nav-courseware-button { width: 86px; text-align: center; margin-top: -3px; } } } .nav-global, .nav-courseware-01 { display: none; } .nav-global { position: absolute; top: 73px; left: calc( 50% - 160px ); z-index: 1000; width: 320px; background: $m-blue-d3; &.show { display: inline; } a { color: white; padding: 10px; font-weight: 400; &:hover, &:focus { background: $m-blue-d5; color: white; border-bottom: none; } } li { display: block; border-bottom: 1px solid $m-blue-d5; } } .nav-courseware { display: inline; div:last-child { margin-right: 0; } } @include media( $desktop ) { .wrapper-header { width: 100%; min-width: 800px; } .mobile-menu-button { display: none; } .logo { position: relative; top: 0; @include left(0); width: auto; img { width: auto; } } .nav-global { display: inline; position: relative; z-index: auto; width: auto; top: auto; left: auto; background: inherit; a { color: $courseware-navigation-color; padding: 3px 10px; font-weight: 600; &:hover, &:focus { background: inherit; color: $courseware-hover-color; } } li { display: inline-block; border-bottom: none; } } .nav-courseware { div:last-child { margin-right: ($baseline/2); } } .nav-courseware-01 { display: inline-block; } .desktop-hide { display: none!important; } } @include media( $xl-desktop ) { .wrapper-header { padding: 17px 0; } .nav-global, .nav-courseware { a { font-size: 18px; } } } } } .view-register header.global-new .cta-register { text-decoration: none; color: $courseware-hover-color; border-bottom-color: $courseware-border-bottom-color; } .view-login header.global-new .cta-login { text-decoration: none; color: $courseware-hover-color; } // marketing site design syncing .view-register, .view-login { header.global nav { width: 960px; } } // page-based nav states .view-howitworks .nav-global-01, .view-courses .nav-global-02, .view-schools .nav-global-03, .view-register .nav-global-04 { a { text-decoration: none; color: $link-color !important; } }