mirror of
https://github.com/koel/koel
synced 2024-12-24 19:43:06 +00:00
583 lines
12 KiB
Text
583 lines
12 KiB
Text
.plyr__captions, .plyr__controls {
|
|
-moz-osx-font-smoothing: grayscale;
|
|
-webkit-font-smoothing: antialiased;
|
|
text-align: center
|
|
}
|
|
|
|
.plyr__tooltip, .plyr__video-embed.plyr iframe {
|
|
pointer-events: none
|
|
}
|
|
|
|
@-webkit-keyframes plyr-progress {
|
|
to {
|
|
background-position: 40px 0
|
|
}
|
|
}
|
|
|
|
@keyframes plyr-progress {
|
|
to {
|
|
background-position: 40px 0
|
|
}
|
|
}
|
|
|
|
.plyr {
|
|
position: relative;
|
|
max-width: 100%;
|
|
min-width: 290px;
|
|
}
|
|
|
|
.plyr, .plyr *, .plyr ::after, .plyr ::before {
|
|
box-sizing: border-box
|
|
}
|
|
|
|
.plyr a, .plyr button, .plyr input, .plyr label {
|
|
-ms-touch-action: manipulation;
|
|
touch-action: manipulation
|
|
}
|
|
|
|
.plyr__sr-only {
|
|
position: absolute !important;
|
|
clip: rect(1px, 1px, 1px, 1px);
|
|
padding: 0 !important;
|
|
border: 0 !important;
|
|
height: 1px !important;
|
|
width: 1px !important;
|
|
overflow: hidden
|
|
}
|
|
|
|
.plyr__video-wrapper {
|
|
position: relative
|
|
}
|
|
|
|
.plyr audio, .plyr video {
|
|
width: 100%;
|
|
height: auto;
|
|
vertical-align: middle
|
|
}
|
|
|
|
.plyr__video-embed {
|
|
padding-bottom: 56.25%;
|
|
height: 0;
|
|
overflow: hidden;
|
|
background: #000
|
|
}
|
|
|
|
.plyr__video-embed iframe {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
border: 0;
|
|
user-select: none
|
|
}
|
|
|
|
.plyr__video-embed > div {
|
|
position: relative;
|
|
padding-bottom: 200%;
|
|
transform: translateY(-35.95%)
|
|
}
|
|
|
|
.plyr__captions {
|
|
display: none;
|
|
position: absolute;
|
|
bottom: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
padding: 20px 20px 30px;
|
|
color: #fff;
|
|
font-size: 20px
|
|
}
|
|
|
|
.plyr__captions span {
|
|
border-radius: 2px;
|
|
padding: 3px 10px;
|
|
background: rgba(0, 0, 0, .9)
|
|
}
|
|
|
|
.plyr__captions span:empty {
|
|
display: none
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.plyr__captions {
|
|
font-size: 24px
|
|
}
|
|
}
|
|
|
|
.plyr--captions-active .plyr__captions {
|
|
display: block
|
|
}
|
|
|
|
.plyr--fullscreen-active .plyr__captions {
|
|
font-size: 32px
|
|
}
|
|
|
|
.plyr__controls {
|
|
position: relative;
|
|
padding: 10px;
|
|
background: #fff;
|
|
line-height: 1;
|
|
box-shadow: 0 1px 1px rgba(52, 63, 74, .2)
|
|
}
|
|
|
|
.plyr__controls::after {
|
|
content: '';
|
|
display: table;
|
|
clear: both
|
|
}
|
|
|
|
.plyr__controls--right {
|
|
display: block;
|
|
margin: 10px auto 0
|
|
}
|
|
|
|
@media (min-width: 560px) {
|
|
.plyr__controls--left {
|
|
float: left
|
|
}
|
|
|
|
.plyr__controls--right {
|
|
float: right;
|
|
margin-top: 0
|
|
}
|
|
}
|
|
|
|
.plyr__controls button {
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
margin: 0 2px;
|
|
padding: 5px 10px;
|
|
overflow: hidden;
|
|
border: 0;
|
|
background: 0 0;
|
|
border-radius: 3px;
|
|
cursor: pointer;
|
|
color: var(--color-highlight);
|
|
transition: background .3s ease, color .3s ease, opacity .3s ease
|
|
}
|
|
|
|
.plyr__controls button svg {
|
|
width: 18px;
|
|
height: 18px;
|
|
display: block;
|
|
fill: currentColor;
|
|
transition: fill .3s ease
|
|
}
|
|
|
|
.plyr__controls button.tab-focus:focus, .plyr__controls button:hover {
|
|
background: #3498DB;
|
|
color: #fff
|
|
}
|
|
|
|
.plyr__controls .plyr__time, .plyr__tooltip {
|
|
color: var(--color-highlight);
|
|
font-size: 14px;
|
|
font-weight: 600
|
|
}
|
|
|
|
.plyr__controls button:focus {
|
|
outline: 0
|
|
}
|
|
|
|
.plyr__controls .icon--captions-on, .plyr__controls .icon--exit-fullscreen, .plyr__controls .icon--muted {
|
|
display: none
|
|
}
|
|
|
|
.plyr__controls .plyr__time {
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
margin-left: 10px
|
|
}
|
|
|
|
.plyr__controls .plyr__time + .plyr__time {
|
|
display: none
|
|
}
|
|
|
|
@media (min-width: 560px) {
|
|
.plyr__controls .plyr__time + .plyr__time {
|
|
display: inline-block
|
|
}
|
|
}
|
|
|
|
.plyr__controls .plyr__time + .plyr__time::before {
|
|
content: '\2044';
|
|
margin-right: 10px
|
|
}
|
|
|
|
.plyr__tooltip {
|
|
visibility: hidden;
|
|
position: absolute;
|
|
z-index: 2;
|
|
bottom: 100%;
|
|
margin-bottom: 10px;
|
|
padding: 10px 15px;
|
|
opacity: 0;
|
|
background: #fff;
|
|
box-shadow: 0 0 5px rgba(64, 64, 64, .1), 0 0 0 1px rgba(64, 64, 64, .1);
|
|
border-radius: 3px;
|
|
line-height: 1.5;
|
|
transform: translate(-50%, 10px) scale(.8);
|
|
-webkit-transform-origin: 50% 100%;
|
|
transform-origin: 50% 100%;
|
|
transition: transform .2s .1s ease, opacity .2s .1s ease, visibility .3s ease;
|
|
}
|
|
|
|
.plyr__tooltip::after, .plyr__tooltip::before {
|
|
content: '';
|
|
position: absolute;
|
|
width: 0;
|
|
height: 0;
|
|
top: 100%;
|
|
left: 50%;
|
|
transform: translateX(-50%)
|
|
}
|
|
|
|
.plyr__tooltip::after {
|
|
bottom: -8px;
|
|
border-right: 7px solid transparent;
|
|
border-top: 7px solid rgba(64, 64, 64, .2);
|
|
border-left: 7px solid transparent;
|
|
z-index: 1
|
|
}
|
|
|
|
.plyr__tooltip::before {
|
|
bottom: -6px;
|
|
border-right: 6px solid transparent;
|
|
border-top: 6px solid #fff;
|
|
border-left: 6px solid transparent;
|
|
z-index: 2
|
|
}
|
|
|
|
.plyr button.tab-focus:focus .plyr__tooltip, .plyr button:hover .plyr__tooltip, .plyr__tooltip--visible {
|
|
visibility: visible;
|
|
opacity: 1;
|
|
transform: translate(-50%, 0) scale(1)
|
|
}
|
|
|
|
.plyr button:hover .plyr__tooltip {
|
|
z-index: 3
|
|
}
|
|
|
|
.plyr input[type=range]::-ms-tooltip {
|
|
display: none
|
|
}
|
|
|
|
.plyr input[type=range].tab-focus:focus {
|
|
outline: rgba(52, 63, 74, .8) dotted 1px;
|
|
outline-offset: 3px
|
|
}
|
|
|
|
.plyr__progress--seek[type=range]:focus, .plyr__volume[type=range]:focus {
|
|
outline: 0
|
|
}
|
|
|
|
.plyr__progress {
|
|
position: absolute;
|
|
bottom: 100%;
|
|
left: 0;
|
|
right: 0;
|
|
width: 100%;
|
|
height: 10px;
|
|
background: transparent;
|
|
}
|
|
|
|
.plyr__progress--buffer[value], .plyr__progress--played[value], .plyr__progress--seek[type=range] {
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
width: 100%;
|
|
height: 4px;
|
|
margin: 0;
|
|
padding: 0;
|
|
vertical-align: top;
|
|
-webkit-appearance: none;
|
|
-moz-appearance: none;
|
|
border: none;
|
|
background: 0 0
|
|
}
|
|
|
|
.plyr__progress--buffer[value]::-webkit-progress-bar, .plyr__progress--played[value]::-webkit-progress-bar {
|
|
background: 0 0;
|
|
transition: width .2s ease
|
|
}
|
|
|
|
.plyr__progress--buffer[value]::-webkit-progress-value, .plyr__progress--played[value]::-webkit-progress-value {
|
|
background: currentColor;
|
|
transition: width .2s ease
|
|
}
|
|
|
|
.plyr__progress--buffer[value]::-moz-progress-bar, .plyr__progress--played[value]::-moz-progress-bar {
|
|
background: currentColor;
|
|
transition: width .2s ease
|
|
}
|
|
|
|
.plyr__progress--played[value] {
|
|
z-index: 2;
|
|
color: #3498DB
|
|
}
|
|
|
|
.plyr__progress--buffer[value] {
|
|
color: rgba(86, 93, 100, .25)
|
|
}
|
|
|
|
.plyr__progress--seek[type=range] {
|
|
z-index: 4;
|
|
cursor: pointer;
|
|
outline: 0;
|
|
height: 10px; /* increase height for touch */
|
|
}
|
|
|
|
.plyr__progress--seek[type=range]::-webkit-slider-runnable-track {
|
|
background: 0 0;
|
|
border: 0
|
|
}
|
|
|
|
.plyr__progress--seek[type=range]::-webkit-slider-thumb {
|
|
-webkit-appearance: none;
|
|
background: 0 0;
|
|
border: 0;
|
|
width: 1px;
|
|
height: 10px
|
|
}
|
|
|
|
.plyr__progress--seek[type=range]::-moz-range-track {
|
|
background: 0 0;
|
|
border: 0
|
|
}
|
|
|
|
.plyr__progress--seek[type=range]::-moz-range-thumb {
|
|
-moz-appearance: none;
|
|
background: 0 0;
|
|
border: 0;
|
|
width: 1px;
|
|
height: 10px
|
|
}
|
|
|
|
.plyr__progress--seek[type=range]::-ms-track {
|
|
color: transparent;
|
|
background: 0 0;
|
|
border: 0
|
|
}
|
|
|
|
.plyr__progress--seek[type=range]::-ms-fill-lower, .plyr__progress--seek[type=range]::-ms-fill-upper {
|
|
background: 0 0;
|
|
border: 0
|
|
}
|
|
|
|
.plyr__progress--seek[type=range]::-ms-thumb {
|
|
background: 0 0;
|
|
border: 0;
|
|
width: 1px;
|
|
height: 10px
|
|
}
|
|
|
|
.plyr__progress--seek[type=range]::-moz-focus-outer {
|
|
border: 0
|
|
}
|
|
|
|
.plyr__progress .plyr__tooltip {
|
|
left: 0
|
|
}
|
|
|
|
.plyr--is-touch .plyr--seek[type=range]::-webkit-slider-thumb {
|
|
width: 40px;
|
|
transform: translateX(-50%)
|
|
}
|
|
|
|
.plyr--is-touch .plyr--seek[type=range]::-moz-range-thumb {
|
|
width: 40px;
|
|
transform: translateX(-50%)
|
|
}
|
|
|
|
.plyr--is-touch .plyr--seek[type=range]::-ms-thumb {
|
|
width: 40px;
|
|
transform: translateX(-50%)
|
|
}
|
|
|
|
.plyr--loading .plyr__progress--buffer {
|
|
-webkit-animation: plyr-progress 1s linear infinite;
|
|
animation: plyr-progress 1s linear infinite;
|
|
background-size: 40px 40px;
|
|
background-repeat: repeat-x;
|
|
background-color: rgba(86, 93, 100, .25);
|
|
background-image: linear-gradient(-45deg, rgba(0, 0, 0, .15) 25%, transparent 25%, transparent 50%, rgba(0, 0, 0, .15) 50%, rgba(0, 0, 0, .15) 75%, transparent 75%, transparent);
|
|
color: transparent
|
|
}
|
|
|
|
.plyr--playing .plyr__controls [data-plyr=play], .plyr__controls [data-plyr=pause] {
|
|
display: none
|
|
}
|
|
|
|
.plyr--playing .plyr__controls [data-plyr=pause] {
|
|
display: inline-block
|
|
}
|
|
|
|
.plyr__volume[type=range] {
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
-webkit-appearance: none;
|
|
-moz-appearance: none;
|
|
width: 100px;
|
|
margin: 0 10px 0 0;
|
|
padding: 0;
|
|
cursor: pointer;
|
|
background: transparent;
|
|
border: none
|
|
}
|
|
|
|
.plyr__volume[type=range]::-webkit-slider-runnable-track {
|
|
height: 6px;
|
|
background: rgba(255, 255, 255, .2);
|
|
border: 0;
|
|
border-radius: 3px
|
|
}
|
|
|
|
.plyr__volume[type=range]::-webkit-slider-thumb {
|
|
-webkit-appearance: none;
|
|
margin-top: -3px;
|
|
height: 12px;
|
|
width: 12px;
|
|
background: var(--color-highlight);
|
|
border: 0;
|
|
border-radius: 100%;
|
|
transition: background .3s ease;
|
|
cursor: ew-resize
|
|
}
|
|
|
|
.plyr__volume[type=range]::-moz-range-track {
|
|
height: 6px;
|
|
background: rgba(255, 255, 255, .2);
|
|
border: 0;
|
|
border-radius: 3px
|
|
}
|
|
|
|
.plyr__volume[type=range]::-moz-range-thumb {
|
|
height: 12px;
|
|
width: 12px;
|
|
background: var(--color-highlight);
|
|
border: 0;
|
|
border-radius: 100%;
|
|
transition: background .3s ease;
|
|
cursor: ew-resize
|
|
}
|
|
|
|
.plyr__volume[type=range]::-ms-track {
|
|
height: 6px;
|
|
background: rgba(255, 255, 255, .2);
|
|
border-color: transparent;
|
|
border-width: 3px 0;
|
|
color: transparent
|
|
}
|
|
|
|
.plyr__volume[type=range]::-ms-fill-lower, .plyr__volume[type=range]::-ms-fill-upper {
|
|
height: 6px;
|
|
background: rgba(255, 255, 255, .2);
|
|
border: 0;
|
|
border-radius: 3px
|
|
}
|
|
|
|
.plyr__volume[type=range]::-ms-thumb {
|
|
height: 12px;
|
|
width: 12px;
|
|
background: var(--color-highlight);
|
|
border: 0;
|
|
border-radius: 100%;
|
|
transition: background .3s ease;
|
|
cursor: ew-resize
|
|
}
|
|
|
|
.plyr__volume[type=range]:focus::-webkit-slider-thumb {
|
|
background: transparent;
|
|
}
|
|
|
|
.plyr__volume[type=range]:focus::-moz-range-thumb {
|
|
background: #3498DB
|
|
}
|
|
|
|
.plyr__volume[type=range]:focus::-ms-thumb {
|
|
background: #3498DB
|
|
}
|
|
|
|
.plyr--is-ios .plyr__volume, .plyr--is-ios [data-plyr=mute], .plyr--is-ios.plyr--audio .plyr__controls--right {
|
|
display: none
|
|
}
|
|
|
|
.plyr--is-ios.plyr--audio .plyr__controls--left {
|
|
float: none
|
|
}
|
|
|
|
.plyr--audio .plyr__controls {
|
|
padding-top: 20px
|
|
}
|
|
|
|
.plyr--audio .plyr__progress {
|
|
bottom: auto;
|
|
top: 0;
|
|
background: transparent;
|
|
}
|
|
|
|
.plyr--fullscreen-active, .plyr.plyr--fullscreen {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
height: 100%;
|
|
width: 100%;
|
|
z-index: 10000000;
|
|
background: #000
|
|
}
|
|
|
|
.plyr--fullscreen-active video, .plyr.plyr--fullscreen video {
|
|
height: 100%
|
|
}
|
|
|
|
.plyr--fullscreen-active .plyr__video-wrapper, .plyr.plyr--fullscreen .plyr__video-wrapper {
|
|
height: 100%;
|
|
width: 100%
|
|
}
|
|
|
|
.plyr--fullscreen-active .plyr__controls, .plyr.plyr--fullscreen .plyr__controls {
|
|
position: absolute;
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0
|
|
}
|
|
|
|
.plyr--fullscreen-active.plyr--fullscreen--hide-controls.plyr--playing .plyr__controls, .plyr.plyr--fullscreen.plyr--fullscreen--hide-controls.plyr--playing .plyr__controls {
|
|
transform: translateY(100%) translateY(5px);
|
|
transition: transform .3s .2s ease;
|
|
}
|
|
|
|
.plyr--fullscreen-active.plyr--fullscreen--hide-controls.plyr--playing .plyr__captions, .plyr.plyr--fullscreen.plyr--fullscreen--hide-controls.plyr--playing .plyr__captions {
|
|
bottom: 5px;
|
|
transition: bottom .3s .2s ease
|
|
}
|
|
|
|
.plyr--fullscreen-active.plyr--fullscreen--hide-controls.plyr--playing.plyr--hover .plyr__controls, .plyr.plyr--fullscreen.plyr--fullscreen--hide-controls.plyr--playing.plyr--hover .plyr__controls {
|
|
transform: translateY(0)
|
|
}
|
|
|
|
.plyr--fullscreen--hide-controls.plyr--fullscreen-active.plyr--playing.plyr--hover .plyr__captions, .plyr--fullscreen-active .plyr__captions, .plyr.plyr--fullscreen .plyr__captions {
|
|
top: auto;
|
|
bottom: 90px
|
|
}
|
|
|
|
@media (min-width: 560px) {
|
|
.plyr--fullscreen--hide-controls.plyr--fullscreen-active.plyr--playing.plyr--hover .plyr__captions, .plyr--fullscreen-active .plyr__captions, .plyr.plyr--fullscreen .plyr__captions {
|
|
bottom: 60px
|
|
}
|
|
}
|
|
|
|
.plyr--captions-active .plyr__controls .icon--captions-on, .plyr--fullscreen-active .icon--exit-fullscreen, .plyr--muted .plyr__controls .icon--muted {
|
|
display: block
|
|
}
|
|
|
|
.plyr [data-plyr=fullscreen], .plyr [data-plyr=captions], .plyr--captions-active .plyr__controls .icon--captions-on + svg, .plyr--fullscreen-active .icon--exit-fullscreen + svg, .plyr--muted .plyr__controls .icon--muted + svg {
|
|
display: none
|
|
}
|
|
|
|
.plyr--captions-enabled [data-plyr=captions], .plyr--fullscreen-enabled [data-plyr=fullscreen] {
|
|
display: inline-block
|
|
}
|