forked from SPC/spc-site
185 lines
3.5 KiB
SCSS
185 lines
3.5 KiB
SCSS
|
///
|
||
|
/// Hyperspace by HTML5 UP
|
||
|
/// html5up.net | @ajlkn
|
||
|
/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
|
||
|
///
|
||
|
|
||
|
/* Sidebar */
|
||
|
|
||
|
#sidebar {
|
||
|
@include padding(2.5em, 2.5em);
|
||
|
background: _palette(bg);
|
||
|
cursor: default;
|
||
|
height: 100vh;
|
||
|
left: 0;
|
||
|
overflow-x: hidden;
|
||
|
overflow-y: auto;
|
||
|
position: fixed;
|
||
|
text-align: right;
|
||
|
top: 0;
|
||
|
width: _size(sidebar-width);
|
||
|
z-index: _misc(z-index-base);
|
||
|
|
||
|
> .inner {
|
||
|
@include vendor('display', 'flex');
|
||
|
@include vendor('flex-direction', 'column');
|
||
|
@include vendor('justify-content', 'center');
|
||
|
@include vendor('transform', 'translateY(0)');
|
||
|
@include vendor('transition', (
|
||
|
'opacity #{_duration(activation)} ease',
|
||
|
));
|
||
|
min-height: 100%;
|
||
|
opacity: 1;
|
||
|
width: 100%;
|
||
|
|
||
|
body.is-ie & {
|
||
|
height: 100%;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
nav {
|
||
|
> ul {
|
||
|
list-style: none;
|
||
|
padding: 0;
|
||
|
|
||
|
> li {
|
||
|
@include vendor('transform', 'translateY(0)');
|
||
|
@include vendor('transition', (
|
||
|
'opacity #{_duration(activation) * 0.15} ease',
|
||
|
'transform #{_duration(activation) * 0.75} ease'
|
||
|
));
|
||
|
margin: 1.5em 0 0 0;
|
||
|
opacity: 1;
|
||
|
padding: 0;
|
||
|
position: relative;
|
||
|
|
||
|
&:first-child {
|
||
|
margin: 0;
|
||
|
}
|
||
|
|
||
|
@for $i from 1 through _misc(max-sidebar-links) {
|
||
|
&:nth-child(#{$i}) {
|
||
|
@include vendor('transition-delay', '#{(_duration(activation) * 0.2 * $i) + (_duration(activation) * 0.25)}');
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
a {
|
||
|
@include vendor('transition', 'color #{_duration(transition)} ease');
|
||
|
border: 0;
|
||
|
color: _palette(fg-light);
|
||
|
display: block;
|
||
|
font-size: 0.6em;
|
||
|
font-weight: _font(weight-bold);
|
||
|
letter-spacing: _font(kerning-alt);
|
||
|
line-height: 1.75;
|
||
|
outline: 0;
|
||
|
padding: 1.35em 0;
|
||
|
position: relative;
|
||
|
text-decoration: none;
|
||
|
text-transform: uppercase;
|
||
|
|
||
|
&:before,
|
||
|
&:after {
|
||
|
border-radius: 0.2em;
|
||
|
bottom: 0;
|
||
|
content: '';
|
||
|
height: 0.2em;
|
||
|
position: absolute;
|
||
|
right: 0;
|
||
|
width: 100%;
|
||
|
}
|
||
|
|
||
|
&:before {
|
||
|
background: lighten(_palette(bg), 5);
|
||
|
}
|
||
|
|
||
|
&:after {
|
||
|
@include vendor('background-image', 'linear-gradient(to right, #{_palette(accent1)}, #{_palette(accent3)})');
|
||
|
@include vendor('transition', 'max-width #{_duration(transition)} ease');
|
||
|
max-width: 0;
|
||
|
}
|
||
|
|
||
|
&:hover {
|
||
|
color: _palette(fg);
|
||
|
}
|
||
|
|
||
|
&.active {
|
||
|
color: _palette(fg-bold);
|
||
|
|
||
|
&:after {
|
||
|
max-width: 100%;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
body.is-preload & {
|
||
|
> .inner {
|
||
|
opacity: 0;
|
||
|
}
|
||
|
|
||
|
nav {
|
||
|
ul {
|
||
|
li {
|
||
|
@include vendor('transform', 'translateY(2em)');
|
||
|
opacity: 0;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@include breakpoint('<=large') {
|
||
|
height: _size(sidebar-height);
|
||
|
left: 0;
|
||
|
line-height: _size(sidebar-height);
|
||
|
overflow: hidden;
|
||
|
padding: 0;
|
||
|
text-align: center;
|
||
|
top: 0;
|
||
|
width: 100%;
|
||
|
|
||
|
> .inner {
|
||
|
@include vendor('flex-direction', 'row');
|
||
|
@include vendor('align-items', 'stretch');
|
||
|
height: inherit;
|
||
|
line-height: inherit;
|
||
|
}
|
||
|
|
||
|
nav {
|
||
|
height: inherit;
|
||
|
line-height: inherit;
|
||
|
|
||
|
ul {
|
||
|
@include vendor('display', 'flex');
|
||
|
height: inherit;
|
||
|
line-height: inherit;
|
||
|
margin: 0;
|
||
|
|
||
|
li {
|
||
|
display: block;
|
||
|
height: inherit;
|
||
|
line-height: inherit;
|
||
|
margin: 0 0 0 2em;
|
||
|
padding: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
a {
|
||
|
height: inherit;
|
||
|
line-height: inherit;
|
||
|
padding: 0;
|
||
|
|
||
|
&:after {
|
||
|
background-image: none;
|
||
|
background-color: _palette(accent3);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@include breakpoint('<=small') {
|
||
|
display: none;
|
||
|
}
|
||
|
}
|