Files
jellyfin-web/src/assets/css/site.scss
T
taku0 3d51c68725 Respect safe area (notch) of mobile devices
This adds paddings to various containers so that buttons and contents are not
hidden by the notch or the Home indicator (the gray bar at the bottom).

- `src/assets/css/librarybrowser.scss`
  - `.skinHeader`: menu bar at the top.
  - `.padded-left` and `.padded-right`: the heading of library.

- `src/assets/css/site.scss`
  - `.content-primary`, `.padded-bottom-page`, `.page`,
    `.pageWithAbsoluteTabs`, and `.pageTabContent`: settings and dashboards.

- `src/elements/emby-scroller/emby-scroller.scss`
  - `.emby-scroller`: the library items.

- `src/assets/css/videoosd.scss`
  - `.videoOsdBottom`: the video playback control buttons and the progress bar.

- `src/components/alphaPicker/style.scss`
  - `.alphaPicker-fixed` and `.alphaPicker-fixed-right`: the alphabet picker.

- `src/components/appFooter/appFooter.scss`
  - `.appfooter`: the bottom bar showing the currently playing media.

- `src/components/multiSelect/multiSelect.scss`
  - `.selectionCommandsPanel`: the top bar when selecting multiple media.
    Shown when long-pressing media.

- `src/components/remotecontrol/remotecontrol.scss`
  - `.playlistSectionButton`: the bottom bar for current playlist.
    Shown when touching `.appfooter`.

- `src/components/toast/toast.scss`
  - `.toastContainer`: the toast.  Shown when refreshing metadata.

- `src/index.html`
  - `.mainDrawerHandle`: gesture area for the drawer.
    It seems conflicting with gestures of Safari.

- `src/libraries/navdrawer/navdrawer.scss`
  - `.tmla-mask` and `.touch-menu-la`: the drawer.

- `src/plugins/htmlVideoPlayer/style.scss`
  - `.videoPlayerContainer`: the video area when not fullscreen.
  - `.videoSubtitles`: the video subtitles for some devices, not including
    iPhone.

- `src/plugins/youtubePlayer/style.scss`
  - `.youtubePlayerContainer` container for the YouTube plugin.  Not tested.
2022-08-18 17:34:57 +09:00

153 lines
2.4 KiB
SCSS

@mixin fullpage {
margin: 0;
padding: 0;
height: 100%;
}
html {
@include fullpage;
line-height: 1.35;
}
body {
@include fullpage;
overflow-x: hidden;
background-color: transparent !important;
-webkit-font-smoothing: antialiased;
}
.clipForScreenReader {
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
width: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
}
.material-icons {
/* Fix font ligatures on older WebOS versions */
font-feature-settings: "liga";
}
.backgroundContainer {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
contain: strict;
}
.layout-mobile,
.layout-tv {
-webkit-touch-callout: none;
user-select: none;
}
.mainAnimatedPage {
contain: style size !important;
}
.pageContainer {
overflow-x: visible !important;
}
.bodyWithPopupOpen {
overflow-y: hidden !important;
}
div[data-role="page"] {
outline: 0;
}
.pageTitle {
margin-top: 0;
font-family: inherit;
}
.fieldDescription {
padding-left: 0.15em;
font-weight: 400;
white-space: normal !important;
+ .fieldDescription {
margin-top: 0.3em;
}
}
.content-primary,
.padded-bottom-page,
.page,
.pageWithAbsoluteTabs .pageTabContent {
/* provides room for the music controls */
padding-bottom: 5em !important;
padding-bottom: calc(env(safe-area-inset-bottom) + 5em) !important;
}
.readOnlyContent {
@media all and (min-width: 50em) {
max-width: 54em;
}
}
form {
@media all and (min-width: 50em) {
max-width: 54em;
}
}
.headerHelpButton {
margin-left: 1.25em !important;
padding-bottom: 0.4em !important;
padding-top: 0.4em !important;
}
.mediaInfoContent {
margin-left: auto;
margin-right: auto;
width: 85%;
}
.headroom {
will-change: transform;
transition: transform 200ms linear;
&--pinned {
transform: translateY(0%);
}
&--unpinned {
transform: translateY(-100%);
}
}
.drawerContent {
/* make sure the bottom of the drawer is visible when music is playing */
padding-bottom: 4em;
}
.force-scroll {
overflow-y: scroll;
}
.hide-scroll {
overflow-y: hidden;
}
.w-100 {
width: 100%;
}
.margin-auto-x {
margin-left: auto;
margin-right: auto;
}
.margin-auto-y {
margin-top: auto;
margin-bottom: auto;
}