mirror of
https://github.com/shaka-project/shaka-player.git
synced 2026-06-25 17:45:03 +03:00
918c30b25a
Closes https://github.com/shaka-project/shaka-player/issues/3357 Closes https://github.com/shaka-project/shaka-player/issues/3303 Thanks to @surajkumar-sk, his https://github.com/shaka-project/shaka-player/pull/3373 has been the inspiration for this.
159 lines
4.2 KiB
Plaintext
159 lines
4.2 KiB
Plaintext
/** @license
|
|
* Shaka Player
|
|
* Copyright 2016 Google LLC
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
/* The main buttons in the UI controls. */
|
|
|
|
@play-button-size-percentage: 15%;
|
|
|
|
.disabled-button() {
|
|
/* Set the background and the color, otherwise it might be overwritten by
|
|
* the css styles in demo. */
|
|
background-color: transparent;
|
|
color: white;
|
|
cursor: default;
|
|
}
|
|
|
|
/* The giant play button, which sits inside .shaka-player-button-container. */
|
|
.shaka-play-button {
|
|
/* Set width & height in a round-about way. By using padding, we can keep
|
|
* a 1:1 aspect ratio and size the button relative to the container width.
|
|
*
|
|
* Since padding is applied equally to top, bottom, left, and right, only use
|
|
* half of the intended percentage for each.
|
|
*
|
|
* Based on tips from https://stackoverflow.com/a/12925343 */
|
|
box-sizing: border-box;
|
|
padding: calc(@play-button-size-percentage / 2);
|
|
width: 0;
|
|
height: 0;
|
|
|
|
/* To be properly positioned in the center, this should have no margin.
|
|
* This might have been set for buttons generally by the app or user-agent. */
|
|
margin: 0;
|
|
|
|
/* This makes the button a circle. */
|
|
border-radius: 50%;
|
|
|
|
/* A small drop shadow below the button. */
|
|
box-shadow: rgba(0 0 0 / 10%) 0 0 20px 0;
|
|
|
|
/* No border. */
|
|
border: none;
|
|
|
|
/* The play arrow is a picture. It is treated a background image.
|
|
* The following settings ensure it shows only once and in the
|
|
* center of the button. */
|
|
background-size: 50%;
|
|
background-repeat: no-repeat;
|
|
background-position: center center;
|
|
|
|
/* A background color behind the play arrow. */
|
|
background-color: rgba(255 255 255 / 90%);
|
|
|
|
.show-when-controls-shown();
|
|
|
|
/* Actual icon images for the two states this could be in.
|
|
* These will be inlined as data URIs when compiled, and so do not need to be
|
|
* deployed separately from the compiled CSS.
|
|
* Note that these URIs should relative to ui/controls.less, not this file. */
|
|
&[icon="play"] {
|
|
background-image: data-uri("images/play_arrow.svg");
|
|
}
|
|
|
|
&[icon="pause"] {
|
|
background-image: data-uri("images/pause.svg");
|
|
}
|
|
}
|
|
|
|
/* This button contains the current time and duration of the video.
|
|
* It's only clickable when the content is live, and current time is behind live
|
|
* edge. Otherwise, the button is disabled.
|
|
*/
|
|
.shaka-current-time {
|
|
font-size: 14px;
|
|
color: white;
|
|
cursor: pointer;
|
|
|
|
&[disabled] {
|
|
.disabled-button();
|
|
}
|
|
}
|
|
|
|
/* Use a consistent outline focus style across browsers. */
|
|
.shaka-controls-container {
|
|
button:focus, input:focus {
|
|
/* Most browsers will fall back to "Highlight" (system setting) color for
|
|
* the focus outline. */
|
|
outline: 1px solid Highlight;
|
|
}
|
|
|
|
/* Disable this Mozilla-specific focus ring, since we have an outline defined
|
|
* for focus. */
|
|
button:-moz-focus-inner, input:-moz-focus-outer {
|
|
outline: none;
|
|
border: 0;
|
|
}
|
|
}
|
|
|
|
/* Outline on focus is important for accessibility, but
|
|
* it doesn't look great. This removes the outline for
|
|
* mouse users while leaving it for keyboard users. */
|
|
.shaka-controls-container:not(.shaka-keyboard-navigation) {
|
|
button:focus, input:focus {
|
|
outline: none;
|
|
}
|
|
}
|
|
|
|
.shaka-fast-foward-container,
|
|
.shaka-rewind-container {
|
|
height: 100%;
|
|
width: 100%;
|
|
.shrinkable();
|
|
.absolute-position();
|
|
|
|
/* Keep all the elements inside button div in center and in row */
|
|
display: flex;
|
|
flex-direction: row;
|
|
justify-content: center;
|
|
align-items: center;
|
|
|
|
/* To be properly positioned, this should have no margin. */
|
|
margin: 0;
|
|
|
|
/* No border. */
|
|
border: none;
|
|
|
|
/* Setting text color to white */
|
|
color: rgb(255 255 255);
|
|
|
|
/* Setting background color to black so white text can be seen clearly */
|
|
background-color: rgb(0 0 0 / 50%);
|
|
|
|
cursor: default;
|
|
font-size: 20px;
|
|
|
|
/* Hidding the container by setting opacity */
|
|
opacity: 0;
|
|
|
|
/* Make the text inside this button unselectable */
|
|
.unselectable();
|
|
}
|
|
|
|
.shaka-fast-foward-container {
|
|
border-radius: 40% 0 0 40%;
|
|
}
|
|
|
|
.shaka-rewind-container {
|
|
border-radius: 0 40% 40% 0;
|
|
}
|
|
|
|
/* This class is instead of material-icon-round
|
|
* because the font-size of 24 doesn't look good */
|
|
.shaka-forward-rewind-container-icon {
|
|
font-family: "Material Icons Round";
|
|
font-size: 34px;
|
|
}
|