videojs_rails 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +4 -0
- data/Gemfile +14 -0
- data/Rakefile +1 -0
- data/app/views/videojs_rails/_videojs_rails.html.erb +22 -0
- data/lib/videojs_rails.rb +2 -0
- data/lib/videojs_rails/engine.rb +6 -0
- data/lib/videojs_rails/railtie.rb +9 -0
- data/lib/videojs_rails/version.rb +3 -0
- data/lib/videojs_rails/view_helpers.rb +9 -0
- data/readme.md +53 -0
- data/vendor/assets/javascripts/videojs.js +1758 -0
- data/vendor/assets/stylesheets/skins/hu.css +116 -0
- data/vendor/assets/stylesheets/skins/tube.css +111 -0
- data/vendor/assets/stylesheets/skins/vim.css +89 -0
- data/vendor/assets/stylesheets/videojs.css +242 -0
- data/videojs_rails.gemspec +20 -0
- metadata +61 -0
@@ -0,0 +1,116 @@
|
|
1
|
+
/*
|
2
|
+
VideoJS HuCSS Skin (http://videojs.com)
|
3
|
+
Version 2.0.0
|
4
|
+
*/
|
5
|
+
|
6
|
+
.hu-css .vjs-controls {
|
7
|
+
height: 47px; opacity: 0.95; color: #fff;
|
8
|
+
background: #3A3835;
|
9
|
+
}
|
10
|
+
.hu-css.video-js-box.vjs-controls-below .vjs-controls { background: #3A3835; }
|
11
|
+
|
12
|
+
.hu-css .vjs-controls > div {
|
13
|
+
top: 0;
|
14
|
+
background: none;
|
15
|
+
border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0;
|
16
|
+
box-shadow: none; -webkit-box-shadow: none; -moz-box-shadow: none;
|
17
|
+
}
|
18
|
+
|
19
|
+
/* Top Level Items */
|
20
|
+
.hu-css .vjs-controls > div.vjs-play-control,
|
21
|
+
.hu-css .vjs-controls > div.vjs-volume-control,
|
22
|
+
.hu-css .vjs-controls > div.vjs-fullscreen-control {
|
23
|
+
bottom: 20px; height: 27px;
|
24
|
+
}
|
25
|
+
/* Bottom Level Items */
|
26
|
+
.hu-css .vjs-controls > div.vjs-progress-control, .hu-css .vjs-controls > div.vjs-time-control {
|
27
|
+
margin-top: 28px; height: 19px;
|
28
|
+
}
|
29
|
+
|
30
|
+
/* Placement of Control Items */
|
31
|
+
.hu-css .vjs-controls > div.vjs-play-control { width: 33px; left: 0px; }
|
32
|
+
.hu-css .vjs-controls > div.vjs-progress-control { width: left: 84px; right: 0; }
|
33
|
+
.hu-css .vjs-controls > div.vjs-time-control { width: 84px; left: 0px; }
|
34
|
+
.hu-css .vjs-controls > div.vjs-volume-control { width: 43px; right: 44px; }
|
35
|
+
.hu-css .vjs-controls > div.vjs-fullscreen-control { width: 43px; right: 0px; }
|
36
|
+
|
37
|
+
/* Play/Pause
|
38
|
+
-------------------------------------------------------------------------------- */
|
39
|
+
.hu-css.vjs-paused .vjs-play-control span { margin: 9px 0 0 12px; }
|
40
|
+
.hu-css.vjs-playing .vjs-play-control span { margin: 9px 0 0 12px; }
|
41
|
+
.hu-css .vjs-play-control:hover { background-color: #000; }
|
42
|
+
|
43
|
+
/* Progress
|
44
|
+
-------------------------------------------------------------------------------- */
|
45
|
+
.hu-css .vjs-progress-holder { /* Box containing play and load progresses */
|
46
|
+
height: 19px; border: none;
|
47
|
+
margin: 0px 0px 0 0px; /* Placement within the progress control item */
|
48
|
+
background: #000;
|
49
|
+
border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0;
|
50
|
+
}
|
51
|
+
.hu-css .vjs-progress-holder div { height: 13px; margin-top: 3px; border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; }
|
52
|
+
.hu-css .vjs-play-progress {
|
53
|
+
/* Default */ background: #777;
|
54
|
+
/* Webkit */ background: -webkit-gradient(linear, left top, left bottom, from(#999), to(#777));
|
55
|
+
/* Firefox */ background: -moz-linear-gradient(top, #999, #777);
|
56
|
+
}
|
57
|
+
.hu-css .vjs-load-progress { background: #555; }
|
58
|
+
|
59
|
+
/* Time Display
|
60
|
+
-------------------------------------------------------------------------------- */
|
61
|
+
.hu-css .vjs-controls .vjs-time-control { font-size: 11px; background: #000; }
|
62
|
+
.hu-css .vjs-controls .vjs-time-control span { line-height: 19px; /* Centering vertically */ }
|
63
|
+
|
64
|
+
/* Volume
|
65
|
+
-------------------------------------------------------------------------------- */
|
66
|
+
/*.hu-css .vjs-volume-control:hover { background-color: #000; }*/
|
67
|
+
.hu-css .vjs-volume-control div { margin: 0 5px 0 5px; padding: 9px 0 0 0; }
|
68
|
+
.hu-css .vjs-volume-control div span { /* Individual volume bars */
|
69
|
+
margin: 0 2px 0 0; /* Space between */
|
70
|
+
width: 3px; height: 0px; /* Total height is height + bottom border */
|
71
|
+
border-bottom: 12px solid #555; /* Default (off) color and height of visible portion */
|
72
|
+
}
|
73
|
+
.hu-css .vjs-volume-control div span.vjs-volume-level-on { border-color: #fff; /* Volume on bar color */ }
|
74
|
+
/* Creating differnt bar heights through height (transparent) and bottom border (visible). */
|
75
|
+
.hu-css .vjs-volume-control div span:nth-child(1) { border-bottom-width: 2px; height: 10px; }
|
76
|
+
.hu-css .vjs-volume-control div span:nth-child(2) { border-bottom-width: 4px; height: 8px; }
|
77
|
+
.hu-css .vjs-volume-control div span:nth-child(3) { border-bottom-width: 6px; height: 6px; }
|
78
|
+
.hu-css .vjs-volume-control div span:nth-child(4) { border-bottom-width: 8px; height: 4px; }
|
79
|
+
.hu-css .vjs-volume-control div span:nth-child(5) { border-bottom-width: 10px; height: 2px; }
|
80
|
+
|
81
|
+
/* Fullscreen
|
82
|
+
-------------------------------------------------------------------------------- */
|
83
|
+
.hu-css .vjs-fullscreen-control:hover { background-color: #000; }
|
84
|
+
.hu-css .vjs-fullscreen-control div { margin: 8px 0 0 0px; padding-left: 13px; height: 13px; border-left: 1px solid #555; }
|
85
|
+
.hu-css .vjs-fullscreen-control div span:nth-child(1) { margin-right: 9px; margin-bottom: 5px; border-top: 4px solid #fff; border-right: 4px solid rgba(0,0,0,0); }
|
86
|
+
.hu-css .vjs-fullscreen-control div span:nth-child(2) { border-top: 4px solid #fff; border-left: 4px solid rgba(0,0,0,0); }
|
87
|
+
.hu-css .vjs-fullscreen-control div span:nth-child(3) { clear: both; margin: 0 9px 0 0; border-bottom: 4px solid #fff; border-right: 4px solid rgba(0,0,0,0); }
|
88
|
+
.hu-css .vjs-fullscreen-control div span:nth-child(4) { border-bottom: 4px solid #fff; border-left: 4px solid rgba(0,0,0,0); }
|
89
|
+
/* Icon when video is in fullscreen mode */
|
90
|
+
.hu-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(1) { border: none; border-bottom: 4px solid #fff; border-left: 4px solid rgba(0,0,0,0); }
|
91
|
+
.hu-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(2) { border: none; border-bottom: 4px solid #fff; border-right: 4px solid rgba(0,0,0,0); }
|
92
|
+
.hu-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(3) { border: none; border-top: 4px solid #fff; border-left: 4px solid rgba(0,0,0,0); }
|
93
|
+
.hu-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(4) { border: none; border-top: 4px solid #fff; border-right: 4px solid rgba(0,0,0,0); }
|
94
|
+
|
95
|
+
/* Big Play Button (at start)
|
96
|
+
---------------------------------------------------------*/
|
97
|
+
.hu-css div.vjs-big-play-button {
|
98
|
+
width: 76px; height: 70px; margin: -35px 0 0 -38px;
|
99
|
+
border: 1px solid #ccc; opacity: 0.8;
|
100
|
+
border-radius: 0px; -webkit-border-radius: 0px; -moz-border-radius: 0px;
|
101
|
+
|
102
|
+
background: rgba(50,50,50,0.8);
|
103
|
+
|
104
|
+
/* CSS Shadows */
|
105
|
+
box-shadow: none; -webkit-box-shadow: none; -moz-box-shadow: none;
|
106
|
+
}
|
107
|
+
.hu-css div.vjs-big-play-button:hover {
|
108
|
+
box-shadow: 0px 0px 80px #fff; -webkit-box-shadow: 0px 0px 80px #fff; -moz-box-shadow: 0px 0px 80px #fff;
|
109
|
+
}
|
110
|
+
.hu-css div.vjs-big-play-button span {
|
111
|
+
margin: 16px 0 0 21px;
|
112
|
+
/* Drawing the play triangle with borders - http://www.infimum.dk/HTML/slantinfo.html */
|
113
|
+
border-left: 40px solid #fff; /* Width & Color of play icon */
|
114
|
+
/* Height of play icon is total top & bottom border widths. Color is transparent. */
|
115
|
+
border-top: 20px solid rgba(0,0,0,0); border-bottom: 20px solid rgba(0,0,0,0);
|
116
|
+
}
|
@@ -0,0 +1,111 @@
|
|
1
|
+
/*
|
2
|
+
VideoJS TubeCSS Skin (http://videojs.com)
|
3
|
+
Version 2.0.0
|
4
|
+
*/
|
5
|
+
|
6
|
+
.tube-css .vjs-controls {
|
7
|
+
opacity: 1; color: #000;
|
8
|
+
height: 24px;
|
9
|
+
bottom: 0;
|
10
|
+
background-color: #ccc;
|
11
|
+
background: #fcfcfc -webkit-gradient(linear, left top, left bottom, from(#fcfcfc), to(#d0d0d0)) left top;
|
12
|
+
background: #fcfcfc -moz-linear-gradient(top, #fcfcfc, #d0d0d0) left top;
|
13
|
+
}
|
14
|
+
|
15
|
+
.tube-css .vjs-controls > div {
|
16
|
+
height: 23px; margin: 0; background: none; top: 0;
|
17
|
+
border: 1px solid #b1b1b1; border-left-color: #eee;
|
18
|
+
border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0;
|
19
|
+
box-shadow: none; -webkit-box-shadow: none; -moz-box-shadow: none;
|
20
|
+
}
|
21
|
+
|
22
|
+
/* Placement of Control Items */
|
23
|
+
.tube-css .vjs-controls > div.vjs-play-control { width: 25px; left: 0; }
|
24
|
+
.tube-css .vjs-controls > div.vjs-progress-control { left: 102px; right: 83px; }
|
25
|
+
.tube-css .vjs-controls > div.vjs-time-control { width: 75px; left: 27px; }
|
26
|
+
.tube-css .vjs-controls > div.vjs-volume-control { width: 50px; right: 30px; }
|
27
|
+
.tube-css .vjs-controls > div.vjs-fullscreen-control { width: 30px; right: 0; }
|
28
|
+
|
29
|
+
/* Removing borders on time & progress to join them */
|
30
|
+
.tube-css .vjs-controls > div.vjs-progress-control { border-left: none; }
|
31
|
+
.tube-css .vjs-controls > div.vjs-time-control { border-right: none; }
|
32
|
+
|
33
|
+
|
34
|
+
/* Play/Pause
|
35
|
+
-------------------------------------------------------------------------------- */
|
36
|
+
.tube-css .vjs-play-control { margin-left: 0; border-left-color: #b1b1b1; }
|
37
|
+
.tube-css.vjs-paused .vjs-play-control span { border-left-color: #333; border-top-width: 7px; border-left-width: 13px; border-bottom-width: 7px; margin: 5px 0 0 7px; }
|
38
|
+
.tube-css.vjs-playing .vjs-play-control span { height: 14px; margin: 5px auto 0; border-left: 4px solid #333; border-right: 4px solid #333; }
|
39
|
+
.tube-css.vjs-paused .vjs-play-control:hover span { border-left-color: #CF1A1A; }
|
40
|
+
.tube-css.vjs-playing .vjs-play-control:hover span { border-left-color: #CF1A1A; border-right-color: #CF1A1A; }
|
41
|
+
|
42
|
+
/* Time Display
|
43
|
+
-------------------------------------------------------------------------------- */
|
44
|
+
.tube-css .vjs-controls .vjs-time-control { font-size: 11px; }
|
45
|
+
.tube-css .vjs-controls .vjs-time-control span { line-height: 25px; /* Centering vertically */ }
|
46
|
+
|
47
|
+
/* Progress
|
48
|
+
-------------------------------------------------------------------------------- */
|
49
|
+
.tube-css .vjs-progress-holder {
|
50
|
+
margin-right: 10px;
|
51
|
+
background-color: #b1b1b1;
|
52
|
+
background: #b1b1b1 -webkit-gradient(linear, left top, left bottom, from(#b1b1b1), to(#cacaca)) left top;
|
53
|
+
background: #b1b1b1 -moz-linear-gradient(top, #b1b1b1, #cacaca) left top;
|
54
|
+
border-color: #CACACA; border-bottom-color: #eaeaea;
|
55
|
+
border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0;
|
56
|
+
}
|
57
|
+
.tube-css .vjs-progress-control .vjs-load-progress { background: #C89191; border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; }
|
58
|
+
.tube-css .vjs-progress-control .vjs-play-progress { background: #f33; background: -webkit-gradient(linear, left top, left bottom, from(#f33), to(#CF1A1A)); background: -moz-linear-gradient(top, #f33, #CF1A1A); -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; }
|
59
|
+
|
60
|
+
/* Volume
|
61
|
+
-------------------------------------------------------------------------------- */
|
62
|
+
.tube-css .vjs-volume-control div { padding: 3px 0 0 0; }
|
63
|
+
.tube-css .vjs-volume-control div span { border-bottom-color: #ccc; }
|
64
|
+
/* Volume icon color */
|
65
|
+
.tube-css .vjs-volume-control div span.vjs-volume-level-on { border-color: #333; }
|
66
|
+
/* Volume icon hovering color */
|
67
|
+
.tube-css .vjs-volume-control:hover div span.vjs-volume-level-on { border-color: #CF1A1A; }
|
68
|
+
|
69
|
+
/* Fullscreen
|
70
|
+
-------------------------------------------------------------------------------- */
|
71
|
+
.tube-css .vjs-fullscreen-control div { margin: 4px 0 0 8px; }
|
72
|
+
/* Fullscreen icon color */
|
73
|
+
.tube-css .vjs-fullscreen-control div span:nth-child(3), .tube-css .vjs-fullscreen-control div span:nth-child(4), .tube-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(1), .tube-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(2) {
|
74
|
+
border-bottom-color: #333;
|
75
|
+
}
|
76
|
+
.tube-css .vjs-fullscreen-control div span:nth-child(1), .tube-css .vjs-fullscreen-control div span:nth-child(2), .tube-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(3), .tube-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(4) {
|
77
|
+
border-top-color: #333;
|
78
|
+
}
|
79
|
+
/* Fullscreen icon hovering color */
|
80
|
+
.tube-css .vjs-fullscreen-control:hover div span:nth-child(3), .tube-css .vjs-fullscreen-control:hover div span:nth-child(4), .tube-css.vjs-fullscreen .vjs-fullscreen-control:hover div span:nth-child(1), .tube-css.vjs-fullscreen .vjs-fullscreen-control:hover div span:nth-child(2) {
|
81
|
+
border-bottom-color: #CF1A1A;
|
82
|
+
}
|
83
|
+
.tube-css .vjs-fullscreen-control:hover div span:nth-child(1), .tube-css .vjs-fullscreen-control:hover div span:nth-child(2), .tube-css.vjs-fullscreen .vjs-fullscreen-control:hover div span:nth-child(3), .tube-css.vjs-fullscreen .vjs-fullscreen-control:hover div span:nth-child(4) {
|
84
|
+
border-top-color: #CF1A1A;
|
85
|
+
}
|
86
|
+
|
87
|
+
/* Big Play Button (at start)
|
88
|
+
---------------------------------------------------------*/
|
89
|
+
.tube-css div.vjs-big-play-button {
|
90
|
+
width: 84px; height: 58px; margin: -29px 0 0 -42px;
|
91
|
+
border: 2px solid #ccc; opacity: 0.9;
|
92
|
+
border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px;
|
93
|
+
|
94
|
+
/* CSS Background Gradients */
|
95
|
+
/* Default */ background-color: #333;
|
96
|
+
/* Webkit */ background: #000 -webkit-gradient(linear, left top, left bottom, from(#000), to(#333)) left 29px;
|
97
|
+
/* Firefox */ background: #000 -moz-linear-gradient(top, #000, #333) left 29px;
|
98
|
+
|
99
|
+
/* CSS Shadows */
|
100
|
+
box-shadow: none; -webkit-box-shadow: none; -moz-box-shadow: none;
|
101
|
+
}
|
102
|
+
.tube-css div.vjs-big-play-button:hover {
|
103
|
+
opacity: 1;
|
104
|
+
}
|
105
|
+
.tube-css div.vjs-big-play-button span {
|
106
|
+
margin: 11px 0 0 26px;
|
107
|
+
/* Drawing the play triangle with borders - http://www.infimum.dk/HTML/slantinfo.html */
|
108
|
+
border-left: 36px solid #fff; /* Width & Color of play icon */
|
109
|
+
/* Height of play icon is total top & bottom border widths. Color is transparent. */
|
110
|
+
border-top: 18px solid rgba(0,0,0,0); border-bottom: 18px solid rgba(0,0,0,0);
|
111
|
+
}
|
@@ -0,0 +1,89 @@
|
|
1
|
+
/*
|
2
|
+
VideoJS VimCSS Skin (http://videojs.com)
|
3
|
+
Version 2.0.0
|
4
|
+
*/
|
5
|
+
|
6
|
+
.vim-css .vjs-controls {
|
7
|
+
height: 60px; opacity: 0.9; color: #fff;
|
8
|
+
}
|
9
|
+
.vim-css .vjs-controls > div {
|
10
|
+
height: 32px; top: 18px; padding: 0; text-align: center; background: rgba(23, 35, 34, 0.746094);
|
11
|
+
border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0;
|
12
|
+
box-shadow: none; -webkit-box-shadow: none; -moz-box-shadow: none;
|
13
|
+
}
|
14
|
+
/* Placement of Control Items */
|
15
|
+
.vim-css .vjs-controls > div.vjs-play-control { width: 65px; left: 10px; }
|
16
|
+
.vim-css .vjs-controls > div.vjs-progress-control { left: 85px; right: 160px; }
|
17
|
+
.vim-css .vjs-controls > div.vjs-time-control { width: 75px; right: 85px; }
|
18
|
+
.vim-css .vjs-controls > div.vjs-volume-control { width: 50px; right: 35px; }
|
19
|
+
.vim-css .vjs-controls > div.vjs-fullscreen-control { width: 25px; right: 10px; }
|
20
|
+
|
21
|
+
/* Play/Pause
|
22
|
+
-------------------------------------------------------------------------------- */
|
23
|
+
.vim-css .vjs-controls .vjs-play-control { top: 10px; margin: 0; height: 40px; border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; }
|
24
|
+
.vim-css .vjs-play-control:hover { background: #00ADEF; }
|
25
|
+
.vim-css.vjs-paused .vjs-play-control span { border-left-color: #fff; border-top-width: 9px; border-left-width: 18px; border-bottom-width: 9px; margin: 11px 0 0 24px; }
|
26
|
+
.vim-css.vjs-playing .vjs-play-control span { width: 5px; height: 18px; margin: 5px auto 0; border-left: 5px solid #fff; border-right: 5px solid #fff; margin: 11px 0 0 24px; }
|
27
|
+
|
28
|
+
/* Progress
|
29
|
+
-------------------------------------------------------------------------------- */
|
30
|
+
.vim-css .vjs-controls .vjs-progress-control { border-radius: 5px 0 0 5px; -webkit-border-radius: 5px 0 0 5px; -moz-border-radius: 5px 0 0 5px; }
|
31
|
+
.vim-css .vjs-progress-control .vjs-progress-holder { height: 8px; padding: 1px; margin: 10px 5px 0 10px; border-color: #666666; border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; }
|
32
|
+
.vim-css .vjs-progress-control .vjs-play-progress { height: 8px; background: #00ADEF; border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; }
|
33
|
+
.vim-css .vjs-progress-control .vjs-load-progress { height: 8px; background: #898F8F; border-radius: 0; -webkit-border-radius: 0; -moz-border-radius: 0; }
|
34
|
+
|
35
|
+
/* Time Display
|
36
|
+
-------------------------------------------------------------------------------- */
|
37
|
+
.vim-css .vjs-controls .vjs-time-control { font-size: 11px; }
|
38
|
+
.vim-css .vjs-controls .vjs-time-control span { line-height: 32px; /* Centering vertically */ }
|
39
|
+
|
40
|
+
/* Volume
|
41
|
+
-------------------------------------------------------------------------------- */
|
42
|
+
.vim-css .vjs-volume-control div { padding: 7px 0 0 5px; width: 30px; }
|
43
|
+
.vim-css .vjs-volume-control div span {
|
44
|
+
float: left; margin: 0 2px 0 0; padding: 0; width: 3px; height: 3px; border-bottom: 12px solid #666666;
|
45
|
+
-webkit-transition: all 100ms linear; -moz-transition: all 100ms linear;
|
46
|
+
}
|
47
|
+
.vim-css .vjs-volume-control div span.vjs-volume-level-on { border-color: #00ADEF; }
|
48
|
+
.vim-css .vjs-volume-control div span:hover { height: 0; border-bottom-width: 15px; }
|
49
|
+
|
50
|
+
/* Fullscreen
|
51
|
+
-------------------------------------------------------------------------------- */
|
52
|
+
.vim-css .vjs-fullscreen-control div { margin: 10px 0 0 0; }
|
53
|
+
.vim-css .vjs-controls .vjs-fullscreen-control { border-radius: 0 5px 5px 0; -webkit-border-radius: 0 5px 5px 0; -moz-border-radius: 0 5px 5px 0; }
|
54
|
+
/* Making default fullscreen icon smaller */
|
55
|
+
.vim-css .vjs-fullscreen-control div span:nth-child(1) { margin: 0 4px 4px 0; border: none; border-top: 4px solid #fff; border-right: 4px solid rgba(0,0,0,0); }
|
56
|
+
.vim-css .vjs-fullscreen-control div span:nth-child(2) { border: none; border-top: 4px solid #fff; border-left: 4px solid rgba(0,0,0,0); }
|
57
|
+
.vim-css .vjs-fullscreen-control div span:nth-child(3) { clear: both; margin: 0 4px 0 0; border: none; border-bottom: 4px solid #fff; border-right: 4px solid rgba(0,0,0,0); }
|
58
|
+
.vim-css .vjs-fullscreen-control div span:nth-child(4) { border: none; border-bottom: 4px solid #fff; border-left: 4px solid rgba(0,0,0,0); }
|
59
|
+
.vim-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(1) { border: none; border-bottom: 4px solid #fff; border-left: 4px solid rgba(0,0,0,0); }
|
60
|
+
.vim-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(2) { border: none; border-bottom: 4px solid #fff; border-right: 4px solid rgba(0,0,0,0); }
|
61
|
+
.vim-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(3) { border: none; border-top: 4px solid #fff; border-left: 4px solid rgba(0,0,0,0); }
|
62
|
+
.vim-css.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(4) { border: none; border-top: 4px solid #fff; border-right: 4px solid rgba(0,0,0,0); }
|
63
|
+
/* Fullscreen control hovering */
|
64
|
+
.vim-css .vjs-fullscreen-control:hover div span:nth-child(3), .vim-css .vjs-fullscreen-control:hover div span:nth-child(4), .vim-css.vjs-fullscreen .vjs-fullscreen-control:hover div span:nth-child(1), .vim-css.vjs-fullscreen .vjs-fullscreen-control:hover div span:nth-child(2) { border-bottom-color: #00ADEF; }
|
65
|
+
.vim-css .vjs-fullscreen-control:hover div span:nth-child(1), .vim-css .vjs-fullscreen-control:hover div span:nth-child(2), .vim-css.vjs-fullscreen .vjs-fullscreen-control:hover div span:nth-child(3), .vim-css.vjs-fullscreen .vjs-fullscreen-control:hover div span:nth-child(4) { border-top-color: #00ADEF; }
|
66
|
+
|
67
|
+
/* Big Play Button (at start)
|
68
|
+
---------------------------------------------------------*/
|
69
|
+
.vim-css div.vjs-big-play-button {
|
70
|
+
width: 130px; height: 80px; margin: -40px 0 0 -65px;
|
71
|
+
border: none; opacity: 0.9;
|
72
|
+
border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px;
|
73
|
+
|
74
|
+
background: rgba(23, 35, 34, 0.746094);
|
75
|
+
|
76
|
+
/* CSS Shadows */
|
77
|
+
box-shadow: none; -webkit-box-shadow: none; -moz-box-shadow: none;
|
78
|
+
}
|
79
|
+
.vim-css div.vjs-big-play-button:hover {
|
80
|
+
background: #00ADEF;
|
81
|
+
opacity: 1;
|
82
|
+
}
|
83
|
+
.vim-css div.vjs-big-play-button span {
|
84
|
+
margin: 22px 0 0 48px;
|
85
|
+
/* Drawing the play triangle with borders - http://www.infimum.dk/HTML/slantinfo.html */
|
86
|
+
border-left: 36px solid #fff; /* Width & Color of play icon */
|
87
|
+
/* Height of play icon is total top & bottom border widths. Color is transparent. */
|
88
|
+
border-top: 18px solid rgba(0,0,0,0); border-bottom: 18px solid rgba(0,0,0,0);
|
89
|
+
}
|
@@ -0,0 +1,242 @@
|
|
1
|
+
/*
|
2
|
+
VideoJS Default Styles (http://videojs.com)
|
3
|
+
Version 2.0.2
|
4
|
+
|
5
|
+
REQUIRED STYLES (be careful overriding)
|
6
|
+
================================================================================ */
|
7
|
+
/* Box containing video, controls, and download links.
|
8
|
+
Will be set to the width of the video element through JS
|
9
|
+
If you want to add some kind of frame or special positioning, use another containing element, not video-js-box. */
|
10
|
+
.video-js-box { text-align: left; position: relative; line-height: 0 !important; margin: 0; padding: 0 !important; border: none !important; }
|
11
|
+
|
12
|
+
/* Video Element */
|
13
|
+
video.video-js { background-color: #000; position: relative; padding: 0; }
|
14
|
+
|
15
|
+
.vjs-flash-fallback { display: block; }
|
16
|
+
|
17
|
+
/* Poster Overlay Style */
|
18
|
+
.video-js-box img.vjs-poster { display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 0; padding: 0; cursor: pointer; }
|
19
|
+
/* Subtiles Style */
|
20
|
+
.video-js-box .vjs-subtitles { color: #fff; font-size: 20px; text-align: center; position: absolute; bottom: 40px; left: 0; right: 0; }
|
21
|
+
|
22
|
+
/* Fullscreen styles for main elements */
|
23
|
+
.video-js-box.vjs-fullscreen { position: fixed; left: 0; top: 0; right: 0; bottom: 0; overflow: hidden; z-index: 1000; }
|
24
|
+
.video-js-box.vjs-fullscreen video.video-js,
|
25
|
+
.video-js-box.vjs-fullscreen .vjs-flash-fallback { position: relative; top: 0; left: 0; width: 100%; height: 100%; z-index: 1000; }
|
26
|
+
.video-js-box.vjs-fullscreen img.vjs-poster { z-index: 1001; }
|
27
|
+
.video-js-box.vjs-fullscreen .vjs-spinner { z-index: 1001; }
|
28
|
+
.video-js-box.vjs-fullscreen .vjs-controls { z-index: 1003; }
|
29
|
+
.video-js-box.vjs-fullscreen .vjs-big-play-button { z-index: 1004; }
|
30
|
+
.video-js-box.vjs-fullscreen .vjs-subtitles { z-index: 1004; }
|
31
|
+
|
32
|
+
/* Styles Loaded Check */
|
33
|
+
.vjs-styles-check { height: 5px; position: absolute; }
|
34
|
+
/* Controls Below Video */
|
35
|
+
.video-js-box.vjs-controls-below .vjs-controls { position: relative; opacity: 1; background-color: #000; }
|
36
|
+
.video-js-box.vjs-controls-below .vjs-subtitles { bottom: 75px; } /* Account for height of controls below video */
|
37
|
+
|
38
|
+
/* DEFAULT SKIN (override in another file)
|
39
|
+
================================================================================
|
40
|
+
Using all CSS to draw the controls. Images could be used if desired.
|
41
|
+
Instead of editing this file, I recommend creating your own skin CSS file to be included after this file,
|
42
|
+
so you can upgrade to newer versions easier. */
|
43
|
+
|
44
|
+
/* Controls Layout
|
45
|
+
Using absolute positioning to position controls */
|
46
|
+
.video-js-box .vjs-controls {
|
47
|
+
position: absolute; margin: 0; opacity: 0.85; color: #fff;
|
48
|
+
display: none; /* Start hidden */
|
49
|
+
left: 0; right: 0; /* 100% width of video-js-box */
|
50
|
+
width: 100%;
|
51
|
+
bottom: 0px; /* Distance from the bottom of the box/video. Keep 0. Use height to add more bottom margin. */
|
52
|
+
height: 35px; /* Including any margin you want above or below control items */
|
53
|
+
padding: 0; /* Controls are absolutely position, so no padding necessary */
|
54
|
+
}
|
55
|
+
|
56
|
+
.video-js-box .vjs-controls > div { /* Direct div children of control bar */
|
57
|
+
position: absolute; /* Use top, bottom, left, and right to specifically position the control. */
|
58
|
+
text-align: center; margin: 0; padding: 0;
|
59
|
+
height: 25px; /* Default height of individual controls */
|
60
|
+
top: 5px; /* Top margin to put space between video and controls when controls are below */
|
61
|
+
|
62
|
+
/* CSS Background Gradients
|
63
|
+
Using to give the aqua-ish look. */
|
64
|
+
/* Default */ background-color: #0B151A;
|
65
|
+
/* Webkit */ background: #1F3744 -webkit-gradient(linear, left top, left bottom, from(#0B151A), to(#1F3744)) left 12px;
|
66
|
+
/* Firefox */ background: #1F3744 -moz-linear-gradient(top, #0B151A, #1F3744) left 12px;
|
67
|
+
|
68
|
+
/* CSS Curved Corners */
|
69
|
+
border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px;
|
70
|
+
|
71
|
+
/* CSS Shadows */
|
72
|
+
box-shadow: 1px 1px 2px #000; -webkit-box-shadow: 1px 1px 2px #000; -moz-box-shadow: 1px 1px 2px #000;
|
73
|
+
}
|
74
|
+
|
75
|
+
/* Placement of Control Items
|
76
|
+
- Left side of pogress bar, use left & width
|
77
|
+
- Rigth side of progress bar, use right & width
|
78
|
+
- Expand with the video (like progress bar) use left & right */
|
79
|
+
.vjs-controls > div.vjs-play-control { left: 5px; width: 25px; }
|
80
|
+
.vjs-controls > div.vjs-progress-control { left: 35px; right: 165px; } /* Using left & right so it expands with the width of the video */
|
81
|
+
.vjs-controls > div.vjs-time-control { width: 75px; right: 90px; } /* Time control and progress bar are combined to look like one */
|
82
|
+
.vjs-controls > div.vjs-volume-control { width: 50px; right: 35px; }
|
83
|
+
.vjs-controls > div.vjs-fullscreen-control { width: 25px; right: 5px; }
|
84
|
+
|
85
|
+
/* Removing curved corners on progress control and time control to join them. */
|
86
|
+
.vjs-controls > div.vjs-progress-control {
|
87
|
+
border-top-right-radius: 0; -webkit-border-top-right-radius: 0; -moz-border-radius-topright: 0;
|
88
|
+
border-bottom-right-radius: 0; -webkit-border-bottom-right-radius: 0; -moz-border-radius-bottomright: 0;
|
89
|
+
}
|
90
|
+
.vjs-controls > div.vjs-time-control {
|
91
|
+
border-top-left-radius: 0; -webkit-border-top-left-radius: 0; -moz-border-radius-topleft: 0;
|
92
|
+
border-bottom-left-radius: 0; -webkit-border-bottom-left-radius: 0; -moz-border-radius-bottomleft: 0;
|
93
|
+
}
|
94
|
+
|
95
|
+
/* Play/Pause
|
96
|
+
-------------------------------------------------------------------------------- */
|
97
|
+
.vjs-play-control { cursor: pointer !important; }
|
98
|
+
/* Play Icon */
|
99
|
+
.vjs-play-control span { display: block; font-size: 0; line-height: 0; }
|
100
|
+
.vjs-paused .vjs-play-control span {
|
101
|
+
width: 0; height: 0; margin: 8px 0 0 8px;
|
102
|
+
/* Drawing the play triangle with borders - http://www.infimum.dk/HTML/slantinfo.html */
|
103
|
+
border-left: 10px solid #fff; /* Width & Color of play icon */
|
104
|
+
/* Height of play icon is total top & bottom border widths. Color is transparent. */
|
105
|
+
border-top: 5px solid rgba(0,0,0,0); border-bottom: 5px solid rgba(0,0,0,0);
|
106
|
+
}
|
107
|
+
.vjs-playing .vjs-play-control span {
|
108
|
+
width: 3px; height: 10px; margin: 8px auto 0;
|
109
|
+
/* Drawing the pause bars with borders */
|
110
|
+
border-top: 0px; border-left: 3px solid #fff; border-bottom: 0px; border-right: 3px solid #fff;
|
111
|
+
}
|
112
|
+
|
113
|
+
/* Progress
|
114
|
+
-------------------------------------------------------------------------------- */
|
115
|
+
.vjs-progress-holder { /* Box containing play and load progresses */
|
116
|
+
position: relative; padding: 0; overflow:hidden; cursor: pointer !important;
|
117
|
+
height: 9px; border: 1px solid #777;
|
118
|
+
margin: 7px 1px 0 5px; /* Placement within the progress control item */
|
119
|
+
border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px;
|
120
|
+
}
|
121
|
+
.vjs-progress-holder div { /* Progress Bars */
|
122
|
+
position: absolute; display: block; width: 0; height: 9px; margin: 0; padding: 0;
|
123
|
+
border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px;
|
124
|
+
}
|
125
|
+
.vjs-play-progress {
|
126
|
+
/* CSS Gradient */
|
127
|
+
/* Default */ background: #fff;
|
128
|
+
/* Webkit */ background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#777));
|
129
|
+
/* Firefox */ background: -moz-linear-gradient(top, #fff, #777);
|
130
|
+
}
|
131
|
+
.vjs-load-progress {
|
132
|
+
opacity: 0.8;
|
133
|
+
/* CSS Gradient */
|
134
|
+
/* Default */ background-color: #555;
|
135
|
+
/* Webkit */ background: -webkit-gradient(linear, left top, left bottom, from(#555), to(#aaa));
|
136
|
+
/* Firefox */ background: -moz-linear-gradient(top, #555, #aaa);
|
137
|
+
}
|
138
|
+
|
139
|
+
/* Time Display
|
140
|
+
-------------------------------------------------------------------------------- */
|
141
|
+
.vjs-controls .vjs-time-control { font-size: 10px; line-height: 1; font-weight: normal; font-family: Helvetica, Arial, sans-serif; }
|
142
|
+
.vjs-controls .vjs-time-control span { line-height: 25px; /* Centering vertically */ }
|
143
|
+
|
144
|
+
/* Volume
|
145
|
+
-------------------------------------------------------------------------------- */
|
146
|
+
.vjs-volume-control { cursor: pointer !important; }
|
147
|
+
.vjs-volume-control div { display: block; margin: 0 5px 0 5px; padding: 4px 0 0 0; }
|
148
|
+
/* Drawing the volume icon using 6 span elements */
|
149
|
+
.vjs-volume-control div span { /* Individual volume bars */
|
150
|
+
float: left; padding: 0;
|
151
|
+
margin: 0 2px 0 0; /* Space between */
|
152
|
+
width: 5px; height: 0px; /* Total height is height + bottom border */
|
153
|
+
border-bottom: 18px solid #555; /* Default (off) color and height of visible portion */
|
154
|
+
}
|
155
|
+
.vjs-volume-control div span.vjs-volume-level-on { border-color: #fff; /* Volume on bar color */ }
|
156
|
+
/* Creating differnt bar heights through height (transparent) and bottom border (visible). */
|
157
|
+
.vjs-volume-control div span:nth-child(1) { border-bottom-width: 2px; height: 16px; }
|
158
|
+
.vjs-volume-control div span:nth-child(2) { border-bottom-width: 4px; height: 14px; }
|
159
|
+
.vjs-volume-control div span:nth-child(3) { border-bottom-width: 7px; height: 11px; }
|
160
|
+
.vjs-volume-control div span:nth-child(4) { border-bottom-width: 10px; height: 8px; }
|
161
|
+
.vjs-volume-control div span:nth-child(5) { border-bottom-width: 14px; height: 4px; }
|
162
|
+
.vjs-volume-control div span:nth-child(6) { margin-right: 0; }
|
163
|
+
|
164
|
+
/* Fullscreen
|
165
|
+
-------------------------------------------------------------------------------- */
|
166
|
+
.vjs-fullscreen-control { cursor: pointer !important; }
|
167
|
+
.vjs-fullscreen-control div {
|
168
|
+
padding: 0; text-align: left; vertical-align: top; cursor: pointer !important;
|
169
|
+
margin: 5px 0 0 5px; /* Placement within the fullscreen control item */
|
170
|
+
width: 20px; height: 20px;
|
171
|
+
}
|
172
|
+
/* Drawing the fullscreen icon using 4 span elements */
|
173
|
+
.vjs-fullscreen-control div span { float: left; margin: 0; padding: 0; font-size: 0; line-height: 0; width: 0; text-align: left; vertical-align: top; }
|
174
|
+
.vjs-fullscreen-control div span:nth-child(1) { /* Top-left triangle */
|
175
|
+
margin-right: 3px; /* Space between top-left and top-right */
|
176
|
+
margin-bottom: 3px; /* Space between top-left and bottom-left */
|
177
|
+
border-top: 6px solid #fff; /* Height and color */
|
178
|
+
border-right: 6px solid rgba(0,0,0,0); /* Width */
|
179
|
+
}
|
180
|
+
.vjs-fullscreen-control div span:nth-child(2) { border-top: 6px solid #fff; border-left: 6px solid rgba(0,0,0,0); }
|
181
|
+
.vjs-fullscreen-control div span:nth-child(3) { clear: both; margin: 0 3px 0 0; border-bottom: 6px solid #fff; border-right: 6px solid rgba(0,0,0,0); }
|
182
|
+
.vjs-fullscreen-control div span:nth-child(4) { border-bottom: 6px solid #fff; border-left: 6px solid rgba(0,0,0,0); }
|
183
|
+
/* Icon when video is in fullscreen mode */
|
184
|
+
.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(1) { border: none; border-bottom: 6px solid #fff; border-left: 6px solid rgba(0,0,0,0); }
|
185
|
+
.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(2) { border: none; border-bottom: 6px solid #fff; border-right: 6px solid rgba(0,0,0,0); }
|
186
|
+
.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(3) { border: none; border-top: 6px solid #fff; border-left: 6px solid rgba(0,0,0,0); }
|
187
|
+
.vjs-fullscreen .vjs-fullscreen-control div span:nth-child(4) { border: none; border-top: 6px solid #fff; border-right: 6px solid rgba(0,0,0,0); }
|
188
|
+
|
189
|
+
/* Download Links - Used for browsers that don't support any video.
|
190
|
+
---------------------------------------------------------*/
|
191
|
+
.vjs-no-video { font-size: small; line-height: 1.5; }
|
192
|
+
|
193
|
+
/* Big Play Button (at start)
|
194
|
+
---------------------------------------------------------*/
|
195
|
+
div.vjs-big-play-button {
|
196
|
+
display: none; /* Start hidden */ z-index: 2;
|
197
|
+
position: absolute; top: 50%; left: 50%; width: 80px; height: 80px; margin: -43px 0 0 -43px; text-align: center; vertical-align: center; cursor: pointer !important;
|
198
|
+
border: 3px solid #fff; opacity: 0.9;
|
199
|
+
border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px;
|
200
|
+
|
201
|
+
/* CSS Background Gradients */
|
202
|
+
/* Default */ background-color: #0B151A;
|
203
|
+
/* Webkit */ background: #1F3744 -webkit-gradient(linear, left top, left bottom, from(#0B151A), to(#1F3744)) left 40px;
|
204
|
+
/* Firefox */ background: #1F3744 -moz-linear-gradient(top, #0B151A, #1F3744) left 40px;
|
205
|
+
|
206
|
+
/* CSS Shadows */
|
207
|
+
box-shadow: 4px 4px 8px #000; -webkit-box-shadow: 4px 4px 8px #000; -moz-box-shadow: 4px 4px 8px #000;
|
208
|
+
}
|
209
|
+
div.vjs-big-play-button:hover {
|
210
|
+
box-shadow: 0px 0px 80px #fff; -webkit-box-shadow: 0px 0px 80px #fff; -moz-box-shadow: 0px 0px 80px #fff;
|
211
|
+
}
|
212
|
+
|
213
|
+
div.vjs-big-play-button span {
|
214
|
+
display: block; font-size: 0; line-height: 0;
|
215
|
+
width: 0; height: 0; margin: 20px 0 0 23px;
|
216
|
+
/* Drawing the play triangle with borders - http://www.infimum.dk/HTML/slantinfo.html */
|
217
|
+
border-left: 40px solid #fff; /* Width & Color of play icon */
|
218
|
+
/* Height of play icon is total top & bottom border widths. Color is transparent. */
|
219
|
+
border-top: 20px solid rgba(0,0,0,0); border-bottom: 20px solid rgba(0,0,0,0);
|
220
|
+
}
|
221
|
+
|
222
|
+
/* Spinner Styles
|
223
|
+
---------------------------------------------------------*/
|
224
|
+
/* CSS Spinners by Kilian Valkhof - http://kilianvalkhof.com/2010/css-xhtml/css3-loading-spinners-without-images/ */
|
225
|
+
.vjs-spinner { display: none; position: absolute; top: 50%; left: 50%; width: 100px; height: 100px; z-index: 1; margin: -50px 0 0 -50px;
|
226
|
+
/* Scaling makes the circles look smoother. */
|
227
|
+
transform: scale(0.5); -webkit-transform:scale(0.5); -moz-transform:scale(0.5);
|
228
|
+
}
|
229
|
+
/* Spinner circles */
|
230
|
+
.vjs-spinner div { position:absolute; left: 40px; top: 40px; width: 20px; height: 20px; background: #fff;
|
231
|
+
border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px;
|
232
|
+
border: 1px solid #ccc; /* Added border so can be visible on white backgrounds */
|
233
|
+
}
|
234
|
+
/* Each circle */
|
235
|
+
.vjs-spinner div:nth-child(1) { opacity: 0.12; transform: rotate(000deg) translate(0, -40px) scale(0.1); -webkit-transform: rotate(000deg) translate(0, -40px) scale(0.1); -moz-transform: rotate(000deg) translate(0, -40px) scale(0.1); }
|
236
|
+
.vjs-spinner div:nth-child(2) { opacity: 0.25; transform: rotate(045deg) translate(0, -40px) scale(0.2); -webkit-transform: rotate(045deg) translate(0, -40px) scale(0.2); -moz-transform: rotate(045deg) translate(0, -40px) scale(0.2); }
|
237
|
+
.vjs-spinner div:nth-child(3) { opacity: 0.37; transform: rotate(090deg) translate(0, -40px) scale(0.4); -webkit-transform: rotate(090deg) translate(0, -40px) scale(0.4); -moz-transform: rotate(090deg) translate(0, -40px) scale(0.4); }
|
238
|
+
.vjs-spinner div:nth-child(4) { opacity: 0.50; transform: rotate(135deg) translate(0, -40px) scale(0.6); -webkit-transform: rotate(135deg) translate(0, -40px) scale(0.6); -moz-transform: rotate(135deg) translate(0, -40px) scale(0.6); }
|
239
|
+
.vjs-spinner div:nth-child(5) { opacity: 0.62; transform: rotate(180deg) translate(0, -40px) scale(0.8); -webkit-transform: rotate(180deg) translate(0, -40px) scale(0.8); -moz-transform: rotate(180deg) translate(0, -40px) scale(0.8); }
|
240
|
+
.vjs-spinner div:nth-child(6) { opacity: 0.75; transform: rotate(225deg) translate(0, -40px) scale(1.0); -webkit-transform: rotate(225deg) translate(0, -40px) scale(1.0); -moz-transform: rotate(225deg) translate(0, -40px) scale(1.0); }
|
241
|
+
.vjs-spinner div:nth-child(7) { opacity: 0.87; transform: rotate(270deg) translate(0, -40px) scale(1.1); -webkit-transform: rotate(270deg) translate(0, -40px) scale(1.1); -moz-transform: rotate(270deg) translate(0, -40px) scale(1.1); }
|
242
|
+
.vjs-spinner div:nth-child(8) { opacity: 1.00; transform: rotate(315deg) translate(0, -40px) scale(1.3); -webkit-transform: rotate(315deg) translate(0, -40px) scale(1.3); -moz-transform: rotate(315deg) translate(0, -40px) scale(1.3); }
|