Add shadow behind navigation when Dashboard is scrolled

Signed-off-by: Jan C. Borchardt <hey@jancborchardt.net>
This commit is contained in:
Jan C. Borchardt 2020-08-24 21:16:31 +02:00 committed by Roeland Jago Douma
parent fe3374d843
commit c8d92ba6f9
No known key found for this signature in database
GPG Key ID: F941078878347C0C
2 changed files with 35 additions and 18 deletions

View File

@ -1,11 +1,39 @@
// Show Dashboard background image beneath header #header {
#body-user #header { background: transparent !important;
background-size: cover !important; --color-header: rgba(24, 24, 24, 1);
background-position: center 50% !important;
background-repeat: no-repeat !important; #body-user.dashboard--dark & {
background-attachment: fixed !important; --color-header: rgba(255, 255, 255, 1);
}
// Show gradient below navigation for visibility of icons when scrolled
&:before {
content: ' ';
display: block;
position: absolute;
background-image: linear-gradient(180deg, var(--color-header) 0%, transparent 100%);
width: 100%;
height: 70px;
top: 0;
margin-top: -70px;
transition: margin-top var(--animation-slow);
#body-user.dashboard--scrolled & {
margin-top: 0;
}
}
// Use flat color instead of gradient for high contrast theme
#body-user.theme--highcontrast & {
background-color: var(--color-header) !important;
&:before {
display: none;
}
}
} }
// Move content up so it scrolls below navigation
#content { #content {
padding-top: 0 !important; padding-top: 0 !important;
} }

View File

@ -225,13 +225,6 @@ export default {
} }
} }
}, },
backgroundImage: {
immediate: true,
handler() {
const header = document.getElementById('header')
header.style.backgroundImage = `url(${this.backgroundImage})`
},
},
}, },
mounted() { mounted() {
this.updateGlobalStyles() this.updateGlobalStyles()
@ -366,7 +359,7 @@ export default {
this.saveStatuses() this.saveStatuses()
}, },
handleScroll() { handleScroll() {
if (window.scrollY > 50) { if (window.scrollY > 70) {
document.body.classList.add('dashboard--scrolled') document.body.classList.add('dashboard--scrolled')
} else { } else {
document.body.classList.remove('dashboard--scrolled') document.body.classList.remove('dashboard--scrolled')
@ -376,10 +369,6 @@ export default {
} }
</script> </script>
<style lang="scss">
</style>
<style lang="scss" scoped> <style lang="scss" scoped>
#app-dashboard { #app-dashboard {
width: 100%; width: 100%;