mirror of
https://github.com/bellingcat/ukraine-timemap.git
synced 2026-06-12 21:38:35 +03:00
wip: restyling overlay
This commit is contained in:
344
src/scss/overlay.scss
Normal file
344
src/scss/overlay.scss
Normal file
@@ -0,0 +1,344 @@
|
||||
$panel-width: 1000px;
|
||||
$panel-height: 1000px;
|
||||
$vimeo-width: $panel-width - 100;
|
||||
$vimeo-height: $panel-height / 2;
|
||||
|
||||
$padding: 20px;
|
||||
$header-inset: 10px;
|
||||
|
||||
$banner-height: 100px;
|
||||
|
||||
.mo-overlay {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
// justify-content: center;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
background-color: rgba(0,0,0, 0.85);
|
||||
z-index: 20;
|
||||
}
|
||||
|
||||
.mo-container {
|
||||
margin-top: $banner-height;
|
||||
background-color: transparent;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
height: calc(100vh - 350px);
|
||||
max-height: calc(100vh - 350px);
|
||||
width: $panel-width;
|
||||
max-width: 90vw;
|
||||
box-shadow: 0 19px 19px rgba(0, 0, 0, 0.3), 0 15px 12px rgba(0, 0, 0, 0.22);
|
||||
|
||||
.back, .next {
|
||||
width: 30px;
|
||||
max-width: 30px;
|
||||
max-height: 30px;
|
||||
height: 30px;
|
||||
background: $darkgrey;
|
||||
color: $offwhite;
|
||||
cursor: pointer;
|
||||
box-shadow: 0 19px 19px rgba(0, 0, 0, 0.3), 0 15px 12px rgba(0, 0, 0, 0.22);
|
||||
svg path { fill: $offwhite; }
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.back {
|
||||
left: 10px;
|
||||
svg path { transform: translate(17px,15px)rotate(-90deg)}
|
||||
}
|
||||
.next {
|
||||
margin-left: calc(100% - 60px);
|
||||
right: 10px;
|
||||
svg path { transform: translate(17px,15px)rotate(90deg)}
|
||||
}
|
||||
}
|
||||
|
||||
$overlay-bg: rgba(239,239,239,0.9);
|
||||
|
||||
.mo-banner {
|
||||
position: fixed;
|
||||
min-height: 100px;
|
||||
background-color: transparent;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: stretch;
|
||||
flex-direction: row;
|
||||
|
||||
.mo-banner-close {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
min-width: $banner-height;
|
||||
.material-icons {
|
||||
font-size: 40pt;
|
||||
background-color: transparent;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
transition: 0.3s all ease;
|
||||
color: $overlay-bg;
|
||||
|
||||
&:hover {
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.mo-banner-content {
|
||||
flex: 11;
|
||||
text-align: center;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
h3 {
|
||||
border-radius: 2px;
|
||||
padding: 10px 15px;
|
||||
background-color: transparent;
|
||||
color: $overlay-bg;
|
||||
margin-left: -$banner-height;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.mo-footer {
|
||||
position: fixed;
|
||||
min-height: 250px;
|
||||
background-color: $offwhite;
|
||||
width: 100%;
|
||||
opacity: 0.9;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
// .mo-header {
|
||||
// min-height: 42px;
|
||||
// max-height: 42px;
|
||||
// width: 100%;
|
||||
// display: flex;
|
||||
// flex-direction: row;
|
||||
// background-color: black;
|
||||
// color: white;
|
||||
//
|
||||
// .mo-header-close {
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
// align-items: center;
|
||||
// margin-left: $header-inset + 8px;
|
||||
// }
|
||||
//
|
||||
// .mo-header-text {
|
||||
// flex: 1;
|
||||
// display: flex;
|
||||
// align-items: center;
|
||||
// justify-content: flex-end;
|
||||
// padding-right: $padding;
|
||||
// font-family: "Lato", Helvetica, sans-serif;
|
||||
// }
|
||||
// }
|
||||
|
||||
.mo-media-container {
|
||||
flex: 1;
|
||||
flex-direction: row;
|
||||
justify-content: center;
|
||||
display: inline-block;
|
||||
overflow: hidden;
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
max-height: calc(#{$panel-height} - 100px);
|
||||
font-family: "Lato", Helvetica, sans-serif;
|
||||
|
||||
// .media-player {
|
||||
// width: 100%;
|
||||
// max-width: $vimeo-width;
|
||||
// }
|
||||
|
||||
.media-content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.media-gallery-controls {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-top: -50%;
|
||||
}
|
||||
|
||||
// NB: topcushion seems to be necessary with certain overflows..
|
||||
&.topcushion {
|
||||
padding-top: 150px;
|
||||
}
|
||||
}
|
||||
|
||||
// .mo-meta-container {
|
||||
// display: flex;
|
||||
// flex-direction: column;
|
||||
// justify-content: center;
|
||||
// box-sizing: border-box;
|
||||
// min-height: 100px;
|
||||
// width: 100%;
|
||||
// // padding: $padding;
|
||||
//
|
||||
// .mo-box-title {
|
||||
// display: flex;
|
||||
// flex-direction: row;
|
||||
// justify-content: space-between;
|
||||
// padding: 0 20px;
|
||||
// }
|
||||
|
||||
// .mo-box {
|
||||
// display: flex;
|
||||
// flex-direction: row;
|
||||
// justify-content: space-around;
|
||||
// max-width: $panel-width;
|
||||
// width: 100%;
|
||||
// padding: $padding 0;
|
||||
// border-top: 1px solid rgb(189,189,189);
|
||||
// font-family: "Lato", Helvetica, sans-serif;
|
||||
// font-size: $normal;
|
||||
//
|
||||
// h4 {
|
||||
// margin: 0 0 5px 0;
|
||||
// text-transform: uppercase;
|
||||
// font-size: $xsmall;
|
||||
// color: $darkwhite;
|
||||
// font-weight: 100;
|
||||
// }
|
||||
//
|
||||
// p {
|
||||
// margin-top: 0;
|
||||
// font-size: $large;
|
||||
// }
|
||||
//
|
||||
// .material-icons {
|
||||
// font-size: $normal;
|
||||
// color: $darkwhite;
|
||||
// margin-right: 5px;
|
||||
// }
|
||||
//
|
||||
// a {
|
||||
// font-size: $large;
|
||||
// color: $darkgrey;
|
||||
// border-bottom: 1px solid $red;
|
||||
// &:hover { border-bottom: 1px solid $darkgrey; }
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// .indent {
|
||||
// margin-left: 2*$header-inset;
|
||||
// }
|
||||
// }
|
||||
|
||||
.mo-controls {
|
||||
color: white;
|
||||
width: $vimeo-width;
|
||||
background-color: black;
|
||||
}
|
||||
|
||||
.media-controls {
|
||||
padding: 0 50px;
|
||||
}
|
||||
|
||||
|
||||
/* source overlay specific styles */
|
||||
.no-source-container {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
border: 1px solid black;
|
||||
padding: 2em;
|
||||
min-height: 200px;
|
||||
}
|
||||
|
||||
.no-source-row {
|
||||
|
||||
p {
|
||||
text-align: center;
|
||||
color: $midgrey;
|
||||
|
||||
.no-source-icon {
|
||||
font-size: $xxxlarge;
|
||||
color: $darkwhite;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.source-media-gallery {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
margin: 0;
|
||||
transition: transform 0.2s ease;
|
||||
}
|
||||
|
||||
.source-text-container {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
box-sizing: border-box;
|
||||
padding: 0 calc(50% - 400px);
|
||||
overflow-y: scroll;
|
||||
font-family: 'Merriweather', Georgia, serif;
|
||||
line-height: 1.5em;
|
||||
min-width: 100%;
|
||||
|
||||
a {
|
||||
color: $darkgrey;
|
||||
border-bottom: 1px solid $red;
|
||||
&:hover { border-bottom: 1px solid $darkgrey; color: $darkgrey; }
|
||||
}
|
||||
|
||||
.md-container {
|
||||
width: 100%;
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
}
|
||||
|
||||
.source-image-container, .media-player {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
padding: 20px;
|
||||
min-width: calc(100% - 40px);
|
||||
}
|
||||
|
||||
.media-player {
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
min-width: 100%;
|
||||
height: 100%;
|
||||
min-height: 100%;
|
||||
align-self: center;
|
||||
}
|
||||
|
||||
.source-image, .source-video {
|
||||
padding: 0px;
|
||||
font-family: 'Lato', Helvetica, sans-serif;
|
||||
// max-width: calc(#{$panel-width} - 100px);
|
||||
max-height: $panel-height;
|
||||
margin: auto;
|
||||
width: auto;
|
||||
height: auto;
|
||||
object-fit: contain;
|
||||
}
|
||||
|
||||
.source-image-loader {
|
||||
width: 400px;
|
||||
height: 400px;
|
||||
}
|
||||
|
||||
.video-react .video-react-progress-control {
|
||||
align-self: center;
|
||||
}
|
||||
|
||||
.video-react .video-react-control {
|
||||
min-height: 100%;
|
||||
}
|
||||
Reference in New Issue
Block a user