36f83ff72c
Introduced Python scripts for SRT subtitle checking and fixing, and added comprehensive documentation covering advanced features such as protocol detection, subtitle/audio/quality management, keyboard shortcuts, and touch gestures. Updated local settings to allow new build and Python commands, added TypeScript definitions for FLV, and implemented RTMP/FLV protocol support in the player. Removed CHANGELOG.md and made various improvements to styles and example app.
112 lines
2.3 KiB
CSS
112 lines
2.3 KiB
CSS
.progress-bar {
|
|
position: relative;
|
|
width: 100%;
|
|
height: 24px;
|
|
display: flex;
|
|
align-items: center;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.progress-track {
|
|
position: relative;
|
|
width: 100%;
|
|
height: 3px;
|
|
background-color: var(--player-progress-bg);
|
|
border-radius: var(--player-radius-full);
|
|
overflow: visible;
|
|
transition: height var(--player-transition-fast) ease;
|
|
}
|
|
|
|
.progress-bar:hover .progress-track,
|
|
.progress-bar.seeking .progress-track {
|
|
height: 6px;
|
|
}
|
|
|
|
.progress-buffered {
|
|
position: absolute;
|
|
inset: 0;
|
|
width: 0;
|
|
background-color: var(--player-progress-buffered);
|
|
border-radius: var(--player-radius-full);
|
|
transition: width 0.12s ease;
|
|
}
|
|
|
|
.progress-played {
|
|
position: absolute;
|
|
inset: 0;
|
|
width: 0;
|
|
background-color: var(--player-primary);
|
|
border-radius: var(--player-radius-full);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: flex-end;
|
|
transition: width 0.12s ease;
|
|
}
|
|
|
|
.progress-handle {
|
|
width: 12px;
|
|
height: 12px;
|
|
border-radius: 50%;
|
|
background-color: var(--player-primary);
|
|
box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.4);
|
|
transform: scale(1);
|
|
transition: transform var(--player-transition-fast) ease, box-shadow var(--player-transition-fast) ease;
|
|
margin-right: -6px;
|
|
}
|
|
|
|
.progress-bar:hover .progress-handle,
|
|
.progress-bar.seeking .progress-handle {
|
|
transform: scale(1.15);
|
|
box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.2);
|
|
}
|
|
|
|
.progress-tooltip {
|
|
position: absolute;
|
|
bottom: calc(100% + 8px);
|
|
left: 0;
|
|
transform: translateX(-50%);
|
|
padding: 4px 10px;
|
|
background: var(--player-surface);
|
|
border: 1px solid rgba(255, 255, 255, 0.1);
|
|
border-radius: 8px;
|
|
color: var(--player-text);
|
|
font-size: 12px;
|
|
font-weight: 500;
|
|
white-space: nowrap;
|
|
pointer-events: none;
|
|
z-index: 10;
|
|
}
|
|
|
|
.progress-tooltip::after {
|
|
content: '';
|
|
position: absolute;
|
|
top: 100%;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
border-width: 5px;
|
|
border-style: solid;
|
|
border-color: var(--player-surface) transparent transparent transparent;
|
|
}
|
|
|
|
@media (max-width: 640px) {
|
|
.progress-bar {
|
|
height: 22px;
|
|
}
|
|
|
|
.progress-track {
|
|
height: 3px;
|
|
}
|
|
|
|
.progress-bar:hover .progress-track,
|
|
.progress-bar.seeking .progress-track {
|
|
height: 5px;
|
|
}
|
|
|
|
.progress-handle {
|
|
width: 10px;
|
|
height: 10px;
|
|
margin-right: -5px;
|
|
transform: scale(1);
|
|
}
|
|
}
|