Files
edx-platform/lms/static/sass/shared/_header.scss
2014-10-17 13:51:43 -04:00

663 lines
13 KiB
SCSS

header.global {
border-bottom: 1px solid $m-gray;
box-shadow: 0 1px 5px 0 rgba(0,0,0, 0.1);
background: $header-bg;
height: 76px;
position: relative;
width: 100%;
z-index: 10;
nav {
@include clearfix;
height: 40px;
margin: 0 auto;
padding: 18px 10px 0px;
max-width: grid-width(12);
min-width: 760px;
}
h1.logo {
@include float(left);
@include margin(-2px, 39px, 0, 0);
position: relative;
a {
display: block;
}
}
.left {
@include float(left);
}
.guest {
@include float(right);
}
> li {
display: inline-block;
margin-right: 20px;
position: relative;
vertical-align: middle;
&:last-child {
margin-right: 0px;
}
a {
letter-spacing: 1px;
vertical-align: middle;
}
}
li.secondary {
> a {
color: $link-color;
display: block;
font-family: $sans-serif;
display: inline-block;
margin: 0px 30px 0px 0px;
text-decoration: none;
text-transform: uppercase;
text-shadow: 0 1px rgba(255,255,255, 0.6);
&:last-child {
margin-right: 0px;
}
&:hover, &:focus {
color: $base-font-color;
}
}
}
.primary {
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;
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: 0px;
}
&:hover, &:focus, &:active {
background: $button-bg-hover-color;
}
}
}
.user {
@include float(right);
margin-top: 4px;
> .primary {
display: block;
@include float(left);
margin: 0px;
position: relative;
> a {
margin: 0px;
@include border-right-radius(0px);
}
&: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;
@include margin-right(10px);
padding-bottom: 6px;
}
}
}
}
a.user-link {
@include padding(6px, 12px, 8px, 35px);
position: relative;
text-transform: none;
font-size: 14px;
font-weight: bold;
letter-spacing: 0;
.avatar {
@include background-image(url('../images/small-header-home-icon.png'));
background-repeat: no-repeat;
// CASE: right to left layout
@include rtl {
background-position: top right;
}
height: 26px;
display: inline-block;
@include left(8px);
opacity: 0.5;
overflow: hidden;
position: absolute;
top: 4px;
@include transition(all 0.15s linear 0s);
width: 26px;
}
&: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;
padding: 5px 10px;
position: absolute;
@include right(0px);
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(12px);
top: -6px;
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;
}
}
// logged in
&.authenticated {
}
}
}
// 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;
position: relative;
height: ($baseline*3.75);
width: 100%;
border-bottom: 4px solid $courseware-border-bottom-color;
box-shadow: 0 1px 5px 0 rgba(0,0,0, 0.1);
background: $header-bg;
nav {
@include clearfix();
width: grid-width(12);
height: ($baseline*2);
margin: 0 auto;
padding: 18px ($baseline/2) 0;
}
h1.logo {
float: left;
margin: -2px 39px 0px 0px;
position: relative;
a {
display: block;
}
}
.left {
float: left;
}
.guest {
float: right;
}
> li {
display: inline-block;
margin-right: 20px;
position: relative;
vertical-align: middle;
&:last-child {
margin-right: 0px;
}
a {
vertical-align: middle;
}
}
li.secondary {
> a {
color: $link-color;
font-family: $sans-serif;
display: inline-block;
margin: 0px 30px 0px 0px;
text-decoration: none;
text-transform: uppercase;
text-shadow: 0 1px rgba(255,255,255, 0.6);
&:last-child {
margin-right: 0px;
}
&: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 {
float: right;
margin-top: 4px;
> .primary {
display: block;
@include float(left);
margin: 0;
position: relative;
> a {
margin: 0px;
@include border-right-radius(0);
}
&:last-child {
> a {
border-radius: 0 4px 4px 0;
border-left: none;
padding: 5px 8px 7px 8px;
&.shopping-cart {
border-radius: 4px;
border: 1px solid $border-color-2;
margin-right: 10px;
padding-bottom: 6px;
}
}
}
}
a.user-link {
@include padding(6px, 12px, 8px, 35px);
position: relative;
text-transform: none;
font-size: 14px;
font-weight: bold;
letter-spacing: 0;
.avatar {
@include background-image(url('../images/small-header-home-icon.png'));
background-repeat: no-repeat;
height: 26px;
display: inline-block;
@include left(8px);
opacity: 0.5;
overflow: hidden;
position: absolute;
top: 4px;
@include transition(all 0.15s linear 0s);
width: 26px;
}
&: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;
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(12px);
top: -6px;
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/4);
list-style: none;
float: left;
li,
div {
display: inline-block;
margin: 0 $baseline+1 0 0;
text-transform: uppercase;
letter-spacing: 0 !important;
&:last-child {
margin-right: 0;
}
a {
border-bottom: 4px solid $header-bg;
display:block;
padding: ($baseline/4);
font-size: 18px;
padding-bottom: ($baseline*1.25);
font-weight: 600;
font-family: $header-sans-serif;
color: $courseware-navigation-color;
&:hover, &:focus{
text-decoration: none;
color: $courseware-hover-color;
}
}
}
}
.nav-courseware {
@extend .nav-global;
float: right;
div {
display: inline-block;
margin: 0 21px 0 0;
text-transform: uppercase;
letter-spacing: 0!important;
position: relative;
vertical-align: middle;
&:last-child {
margin-right: 0;
}
a {
&.nav-courseware-button {
padding: 5px 45px 5px 45px;
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;
}
}
}
}
}
}
.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;
}
}