Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-platform
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
edx-platform
Commits
dde4ee00
Unverified
Commit
dde4ee00
authored
Oct 29, 2017
by
Andy Armstrong
Committed by
GitHub
Oct 29, 2017
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #16357 from edx/HarryRein/responsive-header-dashboard-fixes
Styling fixes for the dashboard and course header.
parents
d0f348d3
58f93cc7
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
550 additions
and
513 deletions
+550
-513
lms/djangoapps/courseware/testutils.py
+1
-1
lms/static/sass/_header.scss
+29
-15
lms/static/sass/bootstrap/_layouts.scss
+7
-3
lms/static/sass/multicourse/_dashboard.scss
+509
-490
lms/static/sass/shared-v2/_components.scss
+1
-1
lms/templates/header/user_dropdown.html
+1
-1
lms/templates/main.html
+1
-1
lms/templates/preview_menu.html
+1
-1
No files found.
lms/djangoapps/courseware/testutils.py
View file @
dde4ee00
...
...
@@ -33,7 +33,7 @@ class RenderXBlockTestMixin(object):
'<ol class="tabs course-tabs"'
,
'<footer id="footer-openedx"'
,
'<div class="window-wrap"'
,
'<div class="preview-menu
container
"'
,
'<div class="preview-menu"'
,
'<div class="container"'
,
]
...
...
lms/static/sass/_header.scss
View file @
dde4ee00
...
...
@@ -30,28 +30,36 @@
height
:
$header-logo-height
;
}
@include
media-breakpoint-down
(
sm
)
{
margin-left
:
calc
(
50%
-
30px
);
@include
media-breakpoint-down
(
md
)
{
@include
margin-left
(
50%
);
height
:
$header-logo-height
;
width
:
auto
;
.logo
{
@include
margin-left
(
-50%
);
}
}
}
.course-header
{
@include
float
(
left
);
@include
margin
(
$baseline
*
1
.25
,
0
,
0
,
$baseline
);
@include
margin
(
$baseline
*
0
.8
,
0
,
0
,
$baseline
);
font-size
:
$font-size-
lg
;
font-size
:
$font-size-
sm
;
color
:
theme-color
(
"dark"
);
line-height
:
1em
;
display
:
none
;
.provider
{
font-weight
:
$font-weight-bold
;
.course-name
{
display
:
block
;
font-size
:
$font-size-base
;
margin-top
:
7px
;
font-weight
:
600
;
}
// Hide the course header for smaller screen sizes
@include
media-breakpoint-up
(
md
)
{
@include
media-breakpoint-up
(
lg
)
{
display
:
block
;
}
}
...
...
@@ -64,7 +72,7 @@
by the desktop styling
*/
// Desktop styling
@include
media-breakpoint-up
(
md
)
{
@include
media-breakpoint-up
(
lg
)
{
.nav-links
{
.nav-item
{
margin
:
0
$baseline
;
...
...
@@ -90,11 +98,11 @@
a
{
color
:
theme-color
(
"secondary"
);
padding
:
$baseline
*
0
.35
$baseline
*
1
.25
$baseline
;
padding
:
$baseline
*
0
.35
$baseline
*
1
.25
19px
;
font-weight
:
$font-weight-normal
;
display
:
inline-block
;
margin-bottom
:
-1
*
$baseline
/
2
;
border-bottom
:
2
px
solid
transparent
;
border-bottom
:
3
px
solid
transparent
;
cursor
:
pointer
;
&
.active
,
...
...
@@ -121,9 +129,14 @@
padding
:
$baseline
/
2
0
0
;
margin
:
0
$baseline
/
2
;
&
.nav-item-dropdown
{
padding
:
0
;
margin
:
0
;
}
a
{
color
:
theme-color
(
"dark"
);
font-weight
:
$font-weight-
bold
;
font-weight
:
$font-weight-
normal
;
}
}
...
...
@@ -173,6 +186,7 @@
// Dropdown behavior
.toggle-user-dropdown
{
padding
:
$baseline
/
2
;
text-decoration
:
none
;
cursor
:
pointer
;
}
...
...
@@ -224,7 +238,7 @@
}
// Responsive styling for mobile
@include
media-breakpoint-down
(
sm
)
{
@include
media-breakpoint-down
(
md
)
{
// Display the menu icon and allow for transition to an X on click
.hamburger-menu
{
@include
left
(
22px
);
...
...
@@ -308,11 +322,11 @@
.mobile-menu
{
border-bottom
:
1px
solid
theme-color
(
'primary'
);
@include
media-breakpoint-up
(
md
)
{
@include
media-breakpoint-up
(
lg
)
{
display
:
none
!
important
;
}
@include
media-breakpoint-down
(
sm
)
{
@include
media-breakpoint-down
(
md
)
{
display
:
none
;
// Override standard styling for the mobile menu links
...
...
@@ -353,7 +367,7 @@
// Hide elements in menu bar when they exist in mobile
.hidden-mobile
{
@include
media-breakpoint-down
(
sm
)
{
@include
media-breakpoint-down
(
md
)
{
&
:not
(
.mobile-nav-link
)
{
display
:
none
;
}
...
...
lms/static/sass/bootstrap/_layouts.scss
View file @
dde4ee00
...
...
@@ -5,7 +5,7 @@
padding-bottom
:
$baseline
*
2
;
.course-tabs
{
padding
:
0
;
padding
:
0
$baseline
*
2
;
font-size
:
$font-size-sm
;
.nav-item
{
...
...
@@ -42,7 +42,7 @@
display
:
flex
;
flex-wrap
:
wrap
;
border-bottom
:
1px
solid
$border-color
;
padding
:
20px
;
padding
:
$baseline
$baseline
*
2
;
.page-header-search
{
@include
margin-right
(
$baseline
);
...
...
@@ -62,6 +62,10 @@
.page-header-main
{
flex-grow
:
1
;
// This column should consume all the available space
.page-title
{
margin-top
:
$baseline
*
0
.4
;
}
}
.page-header-secondary
{
...
...
@@ -84,7 +88,7 @@
}
.page-content
{
padding
:
$baseline
;
padding
:
$baseline
*
2
;
@include
media-breakpoint-up
(
md
)
{
display
:
flex
;
...
...
lms/static/sass/multicourse/_dashboard.scss
View file @
dde4ee00
...
...
@@ -136,7 +136,7 @@
.course-title
{
a
,
span
{
@extend
%t-title3
;
@extend
%t-
light
;
@extend
%t-
regular
;
display
:
inline-block
;
margin-bottom
:
(
$baseline
/
2
);
...
...
@@ -155,7 +155,7 @@
@include
float
(
left
);
padding
:
0
;
margin-top
:
(
$baseline
/
2
)
;
margin-top
:
$baseline
;
[
class
*=
"info-"
]
{
color
:
$gray-d1
;
...
...
@@ -176,7 +176,7 @@
.wrapper-course-actions
{
@include
margin-right
(
$baseline
);
margin-top
:
$baseline
/
2
;
margin-top
:
$baseline
;
}
...
...
@@ -378,661 +378,676 @@
// ====================
// UI: messages
.wrapper-messages-primary
{
@include
clearfix
();
// CASE: "enrolled as" status - professional ed
&
.professional
{
.messages-list
{
margin
:
0
;
padding
:
0
;
background-color
:
theme-color
(
"lightest"
);
// changes to cover
.wrapper-course-image
.cover
{
border-color
:
$professional-color-lvl3
;
padding
:
(
$baseline
/
10
);
}
.message
{
@extend
%ui-depth1
;
border-radius
:
3px
;
display
:
none
;
padding
:
(
$baseline
/
2
)
$baseline
;
border-top
:
1px
solid
$gray-l4
;
color
:
$base-font-color
;
// Overrides the normal white color in this one case
// STATE: shown
&
.is-shown
{
@include
clearfix
();
display
:
block
;
// course enrollment status message
.sts-enrollment
{
.label
{
@extend
%text-sr
;
}
a
{
font-family
:
$font-family-sans-serif
;
// status message
.sts-enrollment-value
{
background
:
$professional-color-lvl3
;
}
}
}
strong
{
font-weight
:
700
;
a
{
font-weight
:
700
;
}
}
// CASE: "enrolled as" status - verified
&
.verified
{
.actions
{
@include
clearfix
();
// changes to cover
.wrapper-course-image
.cover
{
border-color
:
$verified-color-lvl1
;
padding
:
(
$baseline
/
10
);
}
list-style
:
none
;
margin
:
0
;
padding
:
0
;
// course enrollment status message
.sts-enrollment
{
.label
{
@extend
%text-sr
;
}
.message-title
,
.message-copy
.title
{
@extend
%t-title6
;
@extend
%t-weight4
;
.deco-graphic
{
@extend
%ui-depth3
;
line-height
:
1em
;
margin-bottom
:
(
$baseline
/
4
)
;
}
width
:
40px
;
position
:
absolute
;
top
:
-5px
;
.message-copy
,
.message-copy
.copy
{
@extend
%t-copy-sub1
;
@include
right
(
0
);
}
margin
:
2px
0
0
0
;
// status message
.sts-enrollment-value
{
background
:
$verified-color-lvl1
;
}
}
}
// CASE: expandable
&
.is-expandable
{
.wrapper-tip
{
.message-title
,
.message-copy
{
margin-bottom
:
0
;
display
:
inline-block
;
}
// CASE: "enrolled as" status - honor code
&
.honor
{
.message-title
.value
,
.message-copy
{
@include
transition
(
color
$tmg-f2
ease-in-out
0s
);
}
// changes to cover
.wrapper-course-image
.cover
{
border-color
:
$honorcode-color-lvl2
;
padding
:
(
$baseline
/
10
);
}
// STATE: hover
&
:hover
{
cursor
:
pointer
;
// status message
.sts-enrollment-value
{
background
:
$honorcode-color-lvl1
;
}
}
.message-title
.value
,
.message-copy
,
.ui-toggle-expansion
{
color
:
$link-color
;
}
}
}
// CASE: "enrolled as" status - auditing
&
.audit
{
.wrapper-extended
{
@include
transition
(
opacity
$tmg-f2
ease-in-out
0
);
// changes to cover
.wrapper-course-image
.cover
{
border-color
:
$audit-color-lvl2
;
padding
:
(
$baseline
/
10
);
}
display
:
none
;
opacity
:
0
;
}
}
// status message
.sts-enrollment-value
{
background
:
$audit-color-lvl1
;
}
}
}
}
// STATE: is expanded
&
.is-expanded
{
.ui-toggle-expansion
{
@include
rtl
{
@include
transform
(
rotate
(
-90deg
));
}
// Responsive behavior
@include
media-breakpoint-down
(
md
)
{
padding
:
$baseline
;
}
}
@include
ltr
{
@include
transform
(
rotate
(
90deg
));
}
// Secondary functionality
.side-container
{
@include
padding
(
$baseline
*
2
,
$baseline
*
2
,
$baseline
,
$baseline
);
@include
transform-origin
(
50%
50%
);
}
max-width
:
$baseline
*
20
;
min-width
:
$baseline
*
20
;
min-height
:
$baseline
/
2
;
.wrapper-extended
{
display
:
block
;
opacity
:
1
;
}
}
flex-grow
:
1
;
order
:
2
;
// TYPE: upsell
&
.message-upsell
{
.wrapper-tip
{
@include
clearfix
();
.wrapper-find-courses
{
.course-advertise
{
@include
clearfix
();
.message-title
{
@include
float
(
left
)
;
}
box-sizing
:
border-box
;
padding
:
$baseline
;
border
:
1px
solid
$border-color-l3
;
.ui-toggle-expansion
{
@include
transition
(
all
$tmg-f2
ease-in-out
0s
);
@include
font-size
(
18
);
.advertise-message
{
@include
font-size
(
12
);
display
:
inline-block
;
vertical-align
:
middle
;
color
:
$gray-d4
;
margin-bottom
:
$baseline
;
}
@include
margin-right
(
$baseline
/
4
);
}
.ad-link
{
@include
text-align
(
center
);
.message-copy
{
@include
float
(
right
)
;
}
}
.btn-neutral
{
padding-bottom
:
12px
;
padding-top
:
12px
;
}
.wrapper-extended
{
padding
:
(
$baseline
/
4
)
0
;
a
{
@include
font-size
(
16
);
@include
line-height
(
17
);
.message-copy
{
display
:
inline-block
;
padding
:
$baseline
*
0
.5
;
border
:
1px
solid
theme-color
(
'primary'
);
color
:
theme-color
(
'primary'
);
text-decoration
:
none
;
display
:
block
;
.message-copy-bold
{
font-weight
:
600
;
}
}
}
&
:hover
,
&
:focus
,
&
:active
{
color
:
$white
;
background-color
:
theme-color
(
'primary'
);
}
.action-upgrade-container
{
@include
float
(
right
);
span
{
@include
margin-left
(
$baseline
*
0
.25
);
}
display
:
inline-block
;
margin-top
:
(
$baseline
/
2
);
}
.icon
{
@include
margin-right
(
$baseline
*
0
.25
);
}
}
}
}
}
.action-upgrade
{
@extend
%btn-primary-green
;
.profile-sidebar
{
ul
{
padding
:
0
;
border
:
1px
solid
theme-color
(
"light"
);
}
}
@include
clearfix
();
// Responsive behavior
@include
media-breakpoint-down
(
md
)
{
margin
:
0
$baseline
$baseline
*
2
;
padding
:
0
;
max-width
:
100%
;
}
position
:
relative
;
// Responsive behavior
@include
media-breakpoint-down
(
xl
)
{
max-width
:
$baseline
*
15
;
min-width
:
$baseline
*
15
;
}
}
@include
left
(
$baseline
/
2
);
@include
padding
((
$baseline
*
0
.4
)
,
0
,
(
$baseline
*
0
.4
)
,
(
$baseline
*
0
.75
));
// Responsive behavior
@include
media-breakpoint-down
(
md
)
{
flex-direction
:
column
;
}
}
.action-upgrade-icon
{
@include
float
(
left
);
// ====================
// UI: messages
.wrapper-messages-primary
{
@include
clearfix
();
display
:
inline
;
.messages-list
{
margin
:
0
;
padding
:
0
;
background-color
:
theme-color
(
"lightest"
);
}
@include
margin-right
(
$baseline
*
0
.4
);
.message
{
@extend
%ui-depth1
;
margin-top
:
(
$baseline
/
4
);
background
:
url('
#{
$static-path
}
/images/icon-sm-verified.png')
no-repeat
;
background-position
:
-
(
$baseline
*
0
.3
);
background-color
:
white
;
width
:
(
$baseline
*
0
.8
);
height
:
(
$baseline
*
0
.7
);
}
border-radius
:
3px
;
display
:
none
;
padding
:
(
$baseline
/
2
)
$baseline
;
border-top
:
1px
solid
$gray-l4
;
color
:
$base-font-color
;
// Overrides the normal white color in this one case
.deco-graphic
{
position
:
absolute
;
top
:
-
(
$baseline
/
4
);
// STATE: shown
&
.is-shown
{
@include
clearfix
(
);
@include
left
(
-
(
$baseline
*
0
.75
));
display
:
block
;
}
width
:
(
$baseline
*
2
);
}
a
{
font-family
:
$font-family-sans-serif
;
}
span
{
color
:
$white
;
// nasty but needed override for poor <span> styling
}
strong
{
font-weight
:
700
;
.copy
,
.copy-sub
{
display
:
inline-block
;
vertical-align
:
middle
;
}
a
{
font-weight
:
700
;
}
}
.copy
{
@extend
%t-action3
;
@extend
%t-weight4
;
.actions
{
@include
clearfix
();
@include
margin-right
(
$baseline
);
}
list-style
:
none
;
margin
:
0
;
padding
:
0
;
}
.copy-sub
{
@extend
%t-action4
;
.message-title
,
.message-copy
.title
{
@extend
%t-title6
;
@extend
%t-weight4
;
opacity
:
0
.875
;
}
}
}
line-height
:
1em
;
margin-bottom
:
(
$baseline
/
4
);
}
// TYPE: status
&
.message-status
{
border-color
:
$gray-l4
;
.message-copy
,
.message-copy
.copy
{
@extend
%t-copy-sub1
;
.wrapper-message-primary
{
@include
clearfix
();
}
margin
:
2px
0
0
0
;
}
.message-copy
{
@extend
%t-copy-sub1
;
// CASE: expandable
&
.is-expandable
{
.wrapper-tip
{
.message-title
,
.message-copy
{
margin-bottom
:
0
;
display
:
inline-block
;
}
margin
:
0
;
}
.message-title
.value
,
.message-copy
{
@include
transition
(
color
$tmg-f2
ease-in-out
0s
);
}
.credit-action
{
.credit-btn
{
@extend
%btn-pl-yellow-base
;
// STATE: hover
&
:hover
{
cursor
:
pointer
;
@include
float
(
right
);
@include
margin-right
(
5px
);
.message-title
.value
,
.message-copy
,
.ui-toggle-expansion
{
color
:
$link-color
;
}
}
}
background-image
:
none
;
text-shadow
:
none
;
box-shadow
:
none
;
text-transform
:
none
;
}
}
.wrapper-extended
{
@include
transition
(
opacity
$tmg-f2
ease-in-out
0
);
.actions
{
.action
{
@include
float
(
left
);
@include
margin
(
0
,
15px
,
0
,
0
);
display
:
none
;
opacity
:
0
;
}
}
.btn
{
display
:
inline-block
;
}
// STATE: is expanded
&
.is-expanded
{
.ui-toggle-expansion
{
@include
rtl
{
@include
transform
(
rotate
(
-90deg
));
}
.btn
{
@include
box-sizing
(
border-box
);
@include
float
(
left
);
@include
ltr
{
@include
transform
(
rotate
(
90deg
)
);
}
border-radius
:
3px
;
font
:
normal
0
.8rem
/
1
.2rem
$font-family-sans-serif
;
letter-spacing
:
1px
;
padding
:
6px
12px
;
text-align
:
center
;
@include
transform-origin
(
50%
50%
);
}
&
.disabled
{
cursor
:
default
!
important
;
.wrapper-extended
{
display
:
block
;
opacity
:
1
;
}
}
&
:hover
,
&
:focus
{
@include
background-image
(
linear-gradient
(
top
,
#EEE
0%
,
#C2C2C2
50%
,
#ABABAB
50%
,
#B0B0B0
100%
));
// TYPE: upsell
&
.message-upsell
{
.wrapper-tip
{
@include
clearfix
();
background
:
#eee
;
}
}
}
.message-title
{
@include
float
(
left
);
}
.btn
{
@include
float
(
left
);
.ui-toggle-expansion
{
@include
transition
(
all
$tmg-f2
ease-in-out
0s
);
@include
font-size
(
18
);
font
:
normal
0
.8rem
/
1
.2rem
$font-family-sans-serif
;
letter-spacing
:
1px
;
padding
:
6px
12px
;
text-align
:
center
;
}
}
}
display
:
inline-block
;
vertical-align
:
middle
;
.exam-registration-number
{
font-family
:
$font-family-sans-serif
;
font-size
:
18px
;
@include
margin-right
(
$baseline
/
4
);
}
a
{
font-family
:
$font-family-sans-serif
;
}
}
.message-copy
{
@include
float
(
right
)
;
}
}
&
.exam-register
{
.message-copy
{
margin-top
:
(
$baseline
/
4
);
width
:
55%
;
}
}
.wrapper-extended
{
padding
:
(
$baseline
/
4
)
0
;
&
.exam-schedule
{
.exam-button
{
margin-top
:
(
$baseline
/
4
);
}
}
.message-copy
{
display
:
inline-block
;
.exam-button
{
@include
button
(
simple
,
$pink
);
@include
float
(
right
);
.message-copy-bold
{
font-weight
:
600
;
}
}
}
margin-top
:
0
;
}
.action-upgrade-container
{
@include
float
(
right
);
.contact-button
{
@include
button
(
simple
,
$pink
);
}
display
:
inline-block
;
margin-top
:
(
$baseline
/
2
);
}
.button
{
display
:
inline-block
;
margin-top
:
(
$baseline
/
2
);
padding
:
9px
18px
10px
;
font-size
:
13px
;
font-weight
:
bold
;
letter-spacing
:
0
;
.action-upgrade
{
@extend
%btn-primary-green
;
&
:hover
,
&
:focus
{
text-decoration
:
none
;
}
}
@include
clearfix
();
position
:
relative
;
&
.course-status-certrendering
{
.btn
{
margin-top
:
2px
;
}
}
@include
left
(
$baseline
/
2
);
@include
padding
((
$baseline
*
0
.4
)
,
0
,
(
$baseline
*
0
.4
)
,
(
$baseline
*
0
.75
));
&
.course-status-certavailable
{
.message-copy
{
width
:
flex-grid
(
6
,
12
);
position
:
relative
;
.action-upgrade-icon
{
@include
float
(
left
);
@include
float
(
left
);
}
display
:
inline
;
.actions-primary
{
@include
float
(
right
);
@include
margin-right
(
$baseline
*
0
.4
);
.action
{
@include
margin
(
0
,
0
,
(
$baseline
/
2
)
,
(
$baseline
*.
75
));
margin-top
:
(
$baseline
/
4
);
background
:
url('
#{
$static-path
}
/images/icon-sm-verified.png')
no-repeat
;
background-position
:
-
(
$baseline
*
0
.3
);
background-color
:
white
;
width
:
(
$baseline
*
0
.8
);
height
:
(
$baseline
*
0
.7
);
}
float
:
none
;
text-align
:
center
;
.deco-graphic
{
position
:
absolute
;
top
:
-
(
$baseline
/
4
);
&
:last-child
{
margin-bottom
:
0
;
}
@include
left
(
-
(
$baseline
*
0
.75
));
.btn
{
float
:
none
;
}
}
width
:
(
$baseline
*
2
);
}
.action-certificate
.btn
{
@extend
%btn-inherited-primary
;
span
{
color
:
$white
;
// nasty but needed override for poor <span> styling
}
@include
box-sizing
(
border-box
);
.copy
,
.copy-sub
{
display
:
inline-block
;
vertical-align
:
middle
;
}
float
:
none
;
border-radius
:
3px
;
display
:
block
;
.copy
{
@extend
%t-action3
;
@extend
%t-weight4
;
@include
padding
(
7px
,
(
$baseline
*.
75
)
,
7px
,
(
$baseline
*.
75
));
@include
margin-right
(
$baseline
);
}
text-align
:
center
;
.copy-sub
{
@extend
%t-action4
;
a
:link
,
a
:visited
{
color
:
#fff
;
}
}
opacity
:
0
.875
;
}
}
}
.action-share
.btn
{
display
:
inline
;
letter-spacing
:
0
;
}
}
}
// TYPE: status
&
.message-status
{
border-color
:
$gray-l4
;
.actions-secondary
{
margin-top
:
(
$baseline
/
2
);
border-top
:
1px
solid
$gray-l4
;
padding-top
:
(
$baseline
/
2
);
.wrapper-message-primary
{
@include
clearfix
();
}
.action-share
{
@include
float
(
right
)
;
.message-copy
{
@extend
%t-copy-sub1
;
margin
:
0
;
}
}
margin
:
0
;
}
.certificate-explanation
{
@extend
%t-copy-sub1
;
.credit-action
{
.credit-btn
{
@extend
%btn-pl-yellow-base
;
margin-top
:
(
$baseline
/
2
);
border-top
:
1px
solid
$gray-l4
;
padding-top
:
(
$baseline
/
2
);
}
@include
float
(
right
);
@include
margin-right
(
5px
);
.verification-reminder
{
width
:
flex-grid
(
8
,
12
);
background-image
:
none
;
text-shadow
:
none
;
box-shadow
:
none
;
text-transform
:
none
;
}
}
@include
float
(
left
);
.actions
{
.action
{
@include
float
(
left
);
@include
margin
(
0
,
15px
,
0
,
0
);
position
:
relative
;
}
.btn
{
display
:
inline-block
;
}
.verification-cta
{
width
:
flex-grid
(
4
,
12
);
.btn
{
@include
box-sizing
(
border-box
);
@include
float
(
left
);
@include
float
(
left
);
border-radius
:
3px
;
font
:
normal
0
.8rem
/
1
.2rem
$font-family-sans-serif
;
letter-spacing
:
1px
;
padding
:
6px
12px
;
text-align
:
center
;
position
:
relative
;
&
.disabled
{
cursor
:
default
!
important
;
.btn
{
@extend
%btn-pl-green-base
;
&
:hover
,
&
:focus
{
@include
background-image
(
linear-gradient
(
top
,
#EEE
0%
,
#C2C2C2
50%
,
#ABABAB
50%
,
#B0B0B0
100%
))
;
@include
float
(
right
);
}
background
:
#eee
;
}
}
}
.btn
{
@include
float
(
left
);
font
:
normal
0
.8rem
/
1
.2rem
$font-family-sans-serif
;
letter-spacing
:
1px
;
padding
:
6px
12px
;
text-align
:
center
;
}
}
}
&
.message-related-programs
{
background
:
none
;
border
:
none
;
margin-top
:
(
$baseline
/
4
);
padding-bottom
:
0
;
.exam-registration-number
{
font-family
:
$font-family-sans-serif
;
font-size
:
18px
;
.related-programs-preface
{
@include
float
(
left
);
a
{
font-family
:
$font-family-sans-serif
;
}
}
font-weight
:
bold
;
}
&
.exam-register
{
.message-copy
{
margin-top
:
(
$baseline
/
4
);
width
:
55%
;
}
}
ul
{
display
:
inline
;
padding
:
0
;
margin
:
0
;
}
&
.exam-schedule
{
.exam-button
{
margin-top
:
(
$baseline
/
4
)
;
}
}
li
{
@include
float
(
left
);
.exam-button
{
@include
button
(
simple
,
$pink
);
@include
float
(
right
);
display
:
inline
;
padding
:
0
0
.5em
;
border-right
:
1px
solid
;
margin-top
:
0
;
}
.category-ic
on
{
@include
float
(
left
);
@include
margin-right
(
$baseline
/
4
);
.contact-butt
on
{
@include
button
(
simple
,
$pink
);
}
margin-top
:
(
$baseline
/
10
);
background-color
:
transparent
;
background-size
:
100%
;
width
:
(
$baseline
*
0
.7
)
;
height
:
(
$baseline
*
0
.7
)
;
}
}
.button
{
display
:
inline-block
;
margin-top
:
(
$baseline
/
2
)
;
padding
:
9px
18px
10px
;
font-size
:
13px
;
font-weight
:
bold
;
letter-spacing
:
0
;
// Remove separator from last list item.
li
:last-child
{
border
:
0
;
}
}
&
:hover
,
&
:focus
{
text-decoration
:
none
;
}
}
// TYPE: pre-requisites
.prerequisites
{
@include
clearfix
;
.tip
{
font-family
:
$font-family-sans-serif
;
font-size
:
1em
;
color
:
$lighter-base-font-color
;
margin-top
:
(
$baseline
/
2
);
}
}
&
.course-status-certrendering
{
.btn
{
margin-top
:
2px
;
}
}
@include
media-breakpoint-down
(
md
)
{
@include
padding
(
$baseline
/
2
,
$baseline
,
$baseline
/
2
,
$baseline
/
2
);
}
}
&
.course-status-certavailable
{
.message-copy
{
width
:
flex-grid
(
6
,
12
);
position
:
relative
;
@include
float
(
left
);
}
// ====================
.actions-primary
{
@include
float
(
right
);
// CASE: "enrolled as" status - professional ed
&
.professional
{
.action
{
@include
margin
(
0
,
0
,
(
$baseline
/
2
)
,
(
$baseline
*.
75
));
// changes to cover
.wrapper-course-image
.cover
{
border-color
:
$professional-color-lvl3
;
padding
:
(
$baseline
/
10
);
}
float
:
none
;
text-align
:
center
;
// course enrollment status message
.sts-enrollment
{
.label
{
@extend
%text-sr
;
&
:last-child
{
margin-bottom
:
0
;
}
// status message
.sts-enrollment-value
{
background
:
$professional-color-lvl3
;
.btn
{
float
:
none
;
}
}
}
// CASE: "enrolled as" status - verified
&
.verified
{
.action-certificate
.btn
{
@extend
%btn-inherited-primary
;
// changes to cover
.wrapper-course-image
.cover
{
border-color
:
$verified-color-lvl1
;
padding
:
(
$baseline
/
10
);
}
@include
box-sizing
(
border-box
);
// course enrollment status message
.sts-enrollment
{
.label
{
@extend
%text-sr
;
}
float
:
none
;
border-radius
:
3px
;
display
:
block
;
.deco-graphic
{
@extend
%ui-depth3
;
@include
padding
(
7px
,
(
$baseline
*.
75
)
,
7px
,
(
$baseline
*.
75
));
width
:
40px
;
position
:
absolute
;
top
:
-5px
;
text-align
:
center
;
@include
right
(
0
);
a
:link
,
a
:visited
{
color
:
#fff
;
}
}
// status message
.sts-enrollment-value
{
background
:
$verified-color-lvl1
;
}
.action-share
.btn
{
display
:
inline
;
letter-spacing
:
0
;
}
}
}
// CASE: "enrolled as" status - honor code
&
.honor
{
.actions-secondary
{
margin-top
:
(
$baseline
/
2
);
border-top
:
1px
solid
$gray-l4
;
padding-top
:
(
$baseline
/
2
);
// changes to cover
.wrapper-course-image
.cover
{
border-color
:
$honorcode-color-lvl2
;
padding
:
(
$baseline
/
10
);
}
.action-share
{
@include
float
(
right
);
// status message
.sts-enrollment-value
{
background
:
$honorcode-color-lvl1
;
}
margin
:
0
;
}
}
// CASE: "enrolled as" status - auditing
&
.audit
{
// changes to cover
.wrapper-course-image
.cover
{
border-color
:
$audit-color-lvl2
;
padding
:
(
$baseline
/
10
);
}
.certificate-explanation
{
@extend
%t-copy-sub1
;
// status message
.sts-enrollment-value
{
background
:
$audit-color-lvl1
;
}
}
margin-top
:
(
$baseline
/
2
);
border-top
:
1px
solid
$gray-l4
;
padding-top
:
(
$baseline
/
2
);
}
}
// Responsive behavior
@include
media-breakpoint-down
(
md
)
{
padding
:
$baseline
;
}
}
.verification-reminder
{
width
:
flex-grid
(
8
,
12
);
// Secondary functionality
.side-container
{
@include
padding
(
$baseline
*
2
,
$baseline
*
2
,
$baseline
,
$baseline
);
@include
float
(
left
);
max-width
:
$baseline
*
20
;
flex-grow
:
1
;
order
:
2
;
position
:
relative
;
}
.wrapper-find-courses
{
.course-advertise
{
@include
clearfix
();
.verification-cta
{
width
:
flex-grid
(
4
,
12
);
box-sizing
:
border-box
;
padding
:
$baseline
;
border
:
1px
solid
$border-color-l3
;
@include
float
(
left
);
.advertise-message
{
@include
font-size
(
12
);
position
:
relative
;
color
:
$gray-d4
;
margin-bottom
:
$baseline
;
.btn
{
@extend
%btn-pl-green-base
;
@include
float
(
right
);
}
}
}
.ad-link
{
@include
text-align
(
center
);
&
.message-related-programs
{
background
:
none
;
margin-top
:
(
$baseline
/
4
);
margin-bottom
:
$baseline
/
2
;
padding
:
0
;
.btn-neutral
{
padding-bottom
:
12px
;
padding-top
:
12px
;
}
.related-programs-preface
{
@include
float
(
left
);
a
{
@include
font-size
(
16
);
@include
line-height
(
17
);
font-weight
:
bold
;
}
padding
:
$baseline
*
0
.5
;
border
:
1px
solid
theme-color
(
'primary'
)
;
color
:
theme-color
(
'primary'
)
;
text-decoration
:
none
;
display
:
block
;
ul
{
display
:
inline
;
padding
:
0
;
margin
:
0
;
}
&
:hover
,
&
:focus
,
&
:active
{
color
:
$white
;
background-color
:
theme-color
(
'primary'
);
}
li
{
@include
float
(
left
);
span
{
@include
margin-left
(
$baseline
*
0
.25
)
;
}
display
:
inline
;
padding
:
0
0
.5em
;
border-right
:
1px
solid
;
.icon
{
@include
margin-right
(
$baseline
*
0
.25
);
}
}
.category-icon
{
@include
float
(
left
);
@include
margin-right
(
$baseline
/
4
);
margin-top
:
(
$baseline
/
10
);
background-color
:
transparent
;
background-size
:
100%
;
width
:
(
$baseline
*
0
.7
);
height
:
(
$baseline
*
0
.7
);
}
}
// Remove separator from last list item.
li
:last-child
{
border
:
0
;
}
}
// Responsive behavior
@include
media-breakpoint-down
(
md
)
{
margin
:
0
$baseline
$baseline
*
2
;
padding
:
0
;
max-width
:
100%
;
// TYPE: pre-requisites
.prerequisites
{
@include
clearfix
;
.tip
{
font-family
:
$font-family-sans-serif
;
font-size
:
1em
;
color
:
$lighter-base-font-color
;
margin-top
:
(
$baseline
/
2
);
}
}
}
// Responsive behavior
@include
media-breakpoint-down
(
md
)
{
flex-direction
:
column
;
@include
media-breakpoint-down
(
md
)
{
@include
padding
(
$baseline
/
2
,
$baseline
,
$baseline
/
2
,
$baseline
/
2
);
}
}
}
...
...
@@ -1093,6 +1108,9 @@
// status - verification
.status-verification
{
list-style
:
none
;
padding
:
$baseline
/
2
;
.status-title
{
margin
:
0
0
(
$baseline
/
4
)
0
;
}
...
...
@@ -1124,6 +1142,7 @@
@extend
%t-copy-sub2
;
position
:
relative
;
padding-top
:
$baseline
/
2
;
p
{
@extend
%t-copy-sub2
;
...
...
lms/static/sass/shared-v2/_components.scss
View file @
dde4ee00
...
...
@@ -148,7 +148,7 @@
@include
box-sizing
(
border-box
);
margin
:
0
auto
;
padding
:
(
$baseline
*
0
.75
);
padding
:
(
$baseline
*
0
.75
)
(
$baseline
*
2
)
;
background-color
:
$lms-preview-menu-color
;
@media
print
{
...
...
lms/templates/header/user_dropdown.html
View file @
dde4ee00
...
...
@@ -27,7 +27,7 @@ from openedx.core.djangoapps.user_api.accounts.image_helpers import get_profile_
<span
class=
"username"
>
${username}
</span>
</a>
</div>
<div
class=
"nav-item hidden-mobile"
tabindex=
"-1"
>
<div
class=
"nav-item hidden-mobile
nav-item-dropdown
"
tabindex=
"-1"
>
<div
class=
"user-dropdown"
aria-expanded=
"false"
aria-haspopup=
"true"
aria-controls=
"user-menu"
>
<span
class=
"sr"
>
user menu
</span>
<span
class=
"fa fa-caret-down toggle-user-dropdown"
aria-hidden=
"true"
tabindex=
"0"
></span>
...
...
lms/templates/main.html
View file @
dde4ee00
...
...
@@ -159,7 +159,7 @@ from pipeline_mako import render_require_js_path_overrides
<div
class=
"marketing-hero"
><
%
block
name=
"marketing_hero"
></
%
block></div>
<div
class=
"content-wrapper
${"
container-fluid
"
if
uses_bootstrap
else
""
}
main-container
"
id=
"content"
>
<div
class=
"content-wrapper main-container"
id=
"content"
>
${self.body()}
<
%
block
name=
"bodyextra"
/>
</div>
...
...
lms/templates/preview_menu.html
View file @
dde4ee00
...
...
@@ -27,7 +27,7 @@ show_preview_menu = course and staff_access and supports_preview_menu
student_selected =
selected(not
staff_selected
and
not
specific_student_selected
and
not
masquerade_group_id
)
%
>
<nav
class=
"wrapper-preview-menu"
aria-label=
"${_('Course View')}"
>
<div
class=
"preview-menu
container
"
>
<div
class=
"preview-menu"
>
<ol
class=
"preview-actions"
>
<li
class=
"action-preview"
>
<form
action=
"#"
class=
"action-preview-form"
method=
"post"
>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment