aboutsummaryrefslogtreecommitdiffstats
path: root/src/less/components/buttons.less
blob: 542580a2b187d5be08b3b266580813dbe2dea4a4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
.plyr__control {
    position: relative;
    display: inline-block;
    flex-shrink: 0;
    overflow: visible; // IE11
    vertical-align: middle;
    padding: @plyr-control-padding;
    border: 0;
    background: transparent;
    border-radius: 3px;
    cursor: pointer;
    transition: background 0.3s ease, color 0.3s ease, opacity 0.3s ease;
    color: inherit;

    svg {
        width: @plyr-control-icon-size;
        height: @plyr-control-icon-size;
        display: block;
        fill: currentColor;
        pointer-events: none;
    }

    // Hide toggle icons by default
    .icon--pressed {
        display: none;
    }

    // Default focus
    &:focus {
        outline: 0;
    }
}

// Change icons on state change
.plyr__control[aria-pressed='true'] .icon--pressed {
    display: block;
}
.plyr__control[aria-pressed='true'] .icon--not-pressed {
    display: none;
}

// Audio styles
.plyr--audio .plyr__control {
    &.plyr__tab-focus,
    &:hover,
    &[aria-expanded='true'] {
        background: @plyr-audio-control-bg-hover;
        color: @plyr-audio-control-color-hover;
    }
}

// Large play button (video only)
.plyr__play-large {
    display: none;
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: ceil(@plyr-control-spacing * 1.25);
    background: fade(@plyr-video-control-bg-hover, 80%);
    border: 3px solid currentColor;
    border-radius: 100%;
    box-shadow: 0 1px 1px fade(#000, 15%);
    color: @plyr-video-control-color;
    transition: all 0.3s ease;

    svg {
        position: relative;
        left: 2px;
        width: 20px;
        height: 20px;
        display: block;
        fill: currentColor;
        pointer-events: none;
    }

    &:hover,
    &:focus {
        background: @plyr-video-control-bg-hover;
    }

    &:focus {
        outline: 1px dotted fade(@plyr-video-control-color, 50%);
    }
}

.plyr--full-ui.plyr--video .plyr__play-large {
    display: inline-block;
}

.plyr--playing .plyr__play-large {
    opacity: 0;
    visibility: hidden;
}