This changes the mobile landscape view to automatically hide the controls, giving more visibility to the video underneath, and show them on tap/hover.
150 lines
2.7 KiB
CSS
150 lines
2.7 KiB
CSS
/*
|
|
Copyright 2021-2024 New Vector Ltd
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
*/
|
|
|
|
.inRoom {
|
|
display: flex;
|
|
flex-direction: column;
|
|
height: 100%;
|
|
width: 100%;
|
|
overflow-y: auto;
|
|
}
|
|
|
|
.header {
|
|
position: sticky;
|
|
flex-shrink: 0;
|
|
inset-block-start: 0;
|
|
z-index: 1;
|
|
background: linear-gradient(
|
|
0deg,
|
|
rgba(0, 0, 0, 0) 0%,
|
|
var(--cpd-color-bg-canvas-default) 100%
|
|
);
|
|
}
|
|
|
|
.header.filler {
|
|
block-size: var(--cpd-space-6x);
|
|
background: none;
|
|
}
|
|
|
|
.footer {
|
|
position: sticky;
|
|
inset-block-end: 0;
|
|
z-index: 1;
|
|
display: grid;
|
|
grid-template-columns: 1fr auto 1fr;
|
|
grid-template-areas: "logo buttons layout";
|
|
align-items: center;
|
|
gap: var(--cpd-space-3x);
|
|
padding-block: var(--cpd-space-4x);
|
|
padding-inline: var(--inline-content-inset);
|
|
background: linear-gradient(
|
|
180deg,
|
|
rgba(0, 0, 0, 0) 0%,
|
|
var(--cpd-color-bg-canvas-default) 100%
|
|
);
|
|
}
|
|
|
|
.footer.overlay {
|
|
position: absolute;
|
|
inset-block-end: 0;
|
|
inset-inline: 0;
|
|
opacity: 1;
|
|
transition: opacity 0.15s;
|
|
}
|
|
|
|
.footer.overlay.hidden {
|
|
opacity: 0;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.footer.overlay:has(:focus-visible) {
|
|
opacity: 1;
|
|
pointer-events: initial;
|
|
}
|
|
|
|
.logo {
|
|
grid-area: logo;
|
|
justify-self: start;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: var(--cpd-space-2x);
|
|
padding-inline-start: var(--cpd-space-1x);
|
|
}
|
|
|
|
.buttons {
|
|
grid-area: buttons;
|
|
display: flex;
|
|
gap: var(--cpd-space-3x);
|
|
}
|
|
|
|
.layout {
|
|
grid-area: layout;
|
|
justify-self: end;
|
|
}
|
|
|
|
@media (min-height: 400px) {
|
|
.footer {
|
|
padding-block: var(--cpd-space-8x);
|
|
}
|
|
}
|
|
|
|
@media (min-height: 800px) {
|
|
.footer {
|
|
padding-block: var(--cpd-space-10x);
|
|
}
|
|
}
|
|
|
|
@media (min-width: 800px) {
|
|
.buttons {
|
|
gap: var(--cpd-space-4x);
|
|
}
|
|
}
|
|
|
|
.fixedGrid {
|
|
position: absolute;
|
|
inline-size: 100%;
|
|
align-self: center;
|
|
}
|
|
|
|
.scrollingGrid {
|
|
position: relative;
|
|
flex-grow: 1;
|
|
inline-size: 100%;
|
|
align-self: center;
|
|
}
|
|
|
|
.fixedGrid,
|
|
.scrollingGrid {
|
|
/* Disable pointer events so the overlay doesn't block interaction with
|
|
elements behind it */
|
|
pointer-events: none;
|
|
}
|
|
|
|
.fixedGrid > :not(:first-child),
|
|
.scrollingGrid > :not(:first-child) {
|
|
pointer-events: initial;
|
|
}
|
|
|
|
.tile {
|
|
position: absolute;
|
|
inset-block-start: 0;
|
|
}
|
|
|
|
.tile.maximised {
|
|
position: relative;
|
|
flex-grow: 1;
|
|
}
|