smock 0.1.6 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile.lock +3 -3
- data/README.md +5 -0
- data/app/assets/stylesheets/includes/_colors.css.sass +16 -0
- data/app/assets/stylesheets/includes/_forms.css.sass +29 -0
- data/app/assets/stylesheets/includes/_grid.css.sass +13 -0
- data/app/assets/stylesheets/includes/_layouts.css.sass +28 -0
- data/app/assets/stylesheets/includes/_mixins.css.sass +66 -0
- data/app/assets/stylesheets/includes/_typography.css.sass +58 -0
- data/app/assets/stylesheets/includes/_typography_settings.sass +22 -0
- data/app/assets/stylesheets/includes/icons.css.sass +149 -0
- data/app/assets/stylesheets/modules/_asset_uploader.css.sass +54 -0
- data/app/assets/stylesheets/modules/_categories.css.sass +32 -0
- data/app/assets/stylesheets/modules/_footer.css.sass +100 -0
- data/app/assets/stylesheets/modules/_header.css.sass +32 -0
- data/app/assets/stylesheets/modules/_hero.css.sass +69 -0
- data/app/assets/stylesheets/modules/_nav.css.sass +19 -0
- data/app/assets/stylesheets/modules/_pagination.css.sass +5 -0
- data/app/assets/stylesheets/modules/_search_filters.css.sass +34 -0
- data/app/assets/stylesheets/modules/_service.css.sass +58 -0
- data/app/assets/stylesheets/modules/_styleguide.css.sass +73 -0
- data/app/assets/stylesheets/modules/_testimonials.css.sass +27 -0
- data/app/assets/stylesheets/modules/form/_credit_card.css.sass +15 -0
- data/app/assets/stylesheets/modules/form/_payment_method.css.sass +28 -0
- data/app/assets/stylesheets/modules/header/_categories.css.sass +40 -0
- data/app/assets/stylesheets/modules/header/_dropdown.css.sass +55 -0
- data/app/assets/stylesheets/modules/header/_nav.css.sass +58 -0
- data/app/assets/stylesheets/modules/header/_search.css.sass +32 -0
- data/app/assets/stylesheets/modules/service/_favorites.css.sass +82 -0
- data/app/assets/stylesheets/smock.sass +181 -0
- data/app/assets/stylesheets/thirdparty/bourbon/_bourbon-deprecated-upcoming.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/_bourbon.scss +74 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_button.scss +374 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_clearfix.scss +23 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_directional-values.scss +111 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_ellipsis.scss +7 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_font-family.scss +5 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_hide-text.scss +10 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_html5-input-types.scss +110 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_position.scss +32 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_prefixer.scss +45 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_retina-image.scss +31 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_size.scss +44 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_timing-functions.scss +32 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_triangle.scss +86 -0
- data/app/assets/stylesheets/thirdparty/bourbon/addons/_word-wrap.scss +8 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_animation.scss +52 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_appearance.scss +3 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_backface-visibility.scss +6 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_background-image.scss +48 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_background.scss +103 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_border-image.scss +56 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_border-radius.scss +22 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_box-sizing.scss +4 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_calc.scss +4 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_columns.scss +47 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_filter.scss +5 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_flex-box.scss +321 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_font-face.scss +23 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_font-feature-settings.scss +10 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_hidpi-media-query.scss +10 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_hyphens.scss +4 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_image-rendering.scss +14 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_inline-block.scss +8 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_keyframes.scss +35 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_linear-gradient.scss +38 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_perspective.scss +8 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_placeholder.scss +8 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_radial-gradient.scss +39 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_transform.scss +15 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_transition.scss +77 -0
- data/app/assets/stylesheets/thirdparty/bourbon/css3/_user-select.scss +3 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_color-lightness.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_flex-grid.scss +39 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_golden-ratio.scss +3 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_grid-width.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_linear-gradient.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_modular-scale.scss +66 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_px-to-em.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_px-to-rem.scss +15 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_radial-gradient.scss +23 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_strip-units.scss +5 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_tint-shade.scss +9 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_transition-property-name.scss +22 -0
- data/app/assets/stylesheets/thirdparty/bourbon/functions/_unpack.scss +17 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_gradient-positions-parser.scss +13 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_linear-positions-parser.scss +61 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_radial-arg-parser.scss +69 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_radial-positions-parser.scss +18 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_render-gradients.scss +26 -0
- data/app/assets/stylesheets/thirdparty/bourbon/helpers/_shape-size-stripper.scss +10 -0
- data/app/assets/stylesheets/thirdparty/bourbon/settings/_asset-pipeline.scss +1 -0
- data/app/assets/stylesheets/thirdparty/bourbon/settings/_prefixer.scss +6 -0
- data/app/assets/stylesheets/thirdparty/bourbon/settings/_px-to-em.scss +1 -0
- data/app/assets/stylesheets/thirdparty/flexbox_mixins.scss +395 -0
- data/app/assets/stylesheets/thirdparty/jquery.fancybox.css.erb +274 -0
- data/app/assets/stylesheets/thirdparty/neat/_neat-helpers.scss +7 -0
- data/app/assets/stylesheets/thirdparty/neat/_neat.scss +21 -0
- data/app/assets/stylesheets/thirdparty/neat/functions/_new-breakpoint.scss +16 -0
- data/app/assets/stylesheets/thirdparty/neat/functions/_private.scss +125 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_fill-parent.scss +7 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_grid.scss +5 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_media.scss +38 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_omega.scss +61 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_outer-container.scss +8 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_pad.scss +8 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_private.scss +43 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_reset.scss +12 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_row.scss +17 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_shift.scss +16 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_span-columns.scss +43 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_to-deprecate.scss +57 -0
- data/app/assets/stylesheets/thirdparty/neat/grid/_visual-grid.scss +41 -0
- data/app/assets/stylesheets/thirdparty/neat/settings/_grid.scss +7 -0
- data/app/assets/stylesheets/thirdparty/neat/settings/_visual-grid.scss +5 -0
- data/app/assets/stylesheets/thirdparty/normalize.css +425 -0
- data/app/assets/stylesheets/thirdparty/nprogress.css +81 -0
- data/app/assets/stylesheets/thirdparty/typecsset.scss +352 -0
- data/app/assets/stylesheets/thirdparty/video-js.css +775 -0
- data/smock.gemspec +2 -2
- metadata +121 -5
@@ -0,0 +1,81 @@
|
|
1
|
+
/* Make clicks pass-through */
|
2
|
+
#nprogress {
|
3
|
+
pointer-events: none;
|
4
|
+
-webkit-pointer-events: none;
|
5
|
+
}
|
6
|
+
|
7
|
+
#nprogress .bar {
|
8
|
+
background: #29d;
|
9
|
+
|
10
|
+
position: fixed;
|
11
|
+
z-index: 100;
|
12
|
+
top: 0;
|
13
|
+
left: 0;
|
14
|
+
|
15
|
+
width: 100%;
|
16
|
+
height: 2px;
|
17
|
+
}
|
18
|
+
|
19
|
+
/* Fancy blur effect */
|
20
|
+
#nprogress .peg {
|
21
|
+
display: block;
|
22
|
+
position: absolute;
|
23
|
+
right: 0px;
|
24
|
+
width: 100px;
|
25
|
+
height: 100%;
|
26
|
+
box-shadow: 0 0 10px #29d, 0 0 5px #29d;
|
27
|
+
opacity: 1.0;
|
28
|
+
|
29
|
+
-webkit-transform: rotate(3deg) translate(0px, -4px);
|
30
|
+
-moz-transform: rotate(3deg) translate(0px, -4px);
|
31
|
+
-ms-transform: rotate(3deg) translate(0px, -4px);
|
32
|
+
-o-transform: rotate(3deg) translate(0px, -4px);
|
33
|
+
transform: rotate(3deg) translate(0px, -4px);
|
34
|
+
}
|
35
|
+
|
36
|
+
/* Remove these to get rid of the spinner */
|
37
|
+
#nprogress .spinner {
|
38
|
+
display: block;
|
39
|
+
position: fixed;
|
40
|
+
z-index: 100;
|
41
|
+
top: 15px;
|
42
|
+
right: 15px;
|
43
|
+
}
|
44
|
+
|
45
|
+
#nprogress .spinner-icon {
|
46
|
+
width: 14px;
|
47
|
+
height: 14px;
|
48
|
+
|
49
|
+
border: solid 2px transparent;
|
50
|
+
border-top-color: #29d;
|
51
|
+
border-left-color: #29d;
|
52
|
+
border-radius: 10px;
|
53
|
+
|
54
|
+
-webkit-animation: nprogress-spinner 400ms linear infinite;
|
55
|
+
-moz-animation: nprogress-spinner 400ms linear infinite;
|
56
|
+
-ms-animation: nprogress-spinner 400ms linear infinite;
|
57
|
+
-o-animation: nprogress-spinner 400ms linear infinite;
|
58
|
+
animation: nprogress-spinner 400ms linear infinite;
|
59
|
+
}
|
60
|
+
|
61
|
+
@-webkit-keyframes nprogress-spinner {
|
62
|
+
0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
|
63
|
+
100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
|
64
|
+
}
|
65
|
+
@-moz-keyframes nprogress-spinner {
|
66
|
+
0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
|
67
|
+
100% { -moz-transform: rotate(360deg); transform: rotate(360deg); }
|
68
|
+
}
|
69
|
+
@-o-keyframes nprogress-spinner {
|
70
|
+
0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
|
71
|
+
100% { -o-transform: rotate(360deg); transform: rotate(360deg); }
|
72
|
+
}
|
73
|
+
@-ms-keyframes nprogress-spinner {
|
74
|
+
0% { -ms-transform: rotate(0deg); transform: rotate(0deg); }
|
75
|
+
100% { -ms-transform: rotate(360deg); transform: rotate(360deg); }
|
76
|
+
}
|
77
|
+
@keyframes nprogress-spinner {
|
78
|
+
0% { transform: rotate(0deg); transform: rotate(0deg); }
|
79
|
+
100% { transform: rotate(360deg); transform: rotate(360deg); }
|
80
|
+
}
|
81
|
+
|
@@ -0,0 +1,352 @@
|
|
1
|
+
/**
|
2
|
+
* Typecsset
|
3
|
+
*
|
4
|
+
* Typecsset is a small, unopinionated library for creating beautifully set type
|
5
|
+
* on the web. Typecsset gives perfect vertical rhythm at any configurable font
|
6
|
+
* size, as well as many other typographical niceties.
|
7
|
+
*/
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
//------------------------------------\\
|
14
|
+
// SETTINGS
|
15
|
+
//------------------------------------\\
|
16
|
+
// Typecsset needs some variables setting before it can get started. Some of
|
17
|
+
// these variables can be overriden by developers, others need to remain
|
18
|
+
// untouched because Typecsset will assign them automatically based on what
|
19
|
+
// you’ve told it.
|
20
|
+
|
21
|
+
// What would you like your base font-size to be? Define in pixels; the library
|
22
|
+
// will convert measurements to the most appropriate units (rems or unitless).
|
23
|
+
$typecsset-base-font-size: 16px !default;
|
24
|
+
$typecsset-base-line-height: 24px !default;
|
25
|
+
|
26
|
+
// Heading sizes
|
27
|
+
$typecsset-h1-size: 48px !default;
|
28
|
+
$typecsset-h2-size: 36px !default;
|
29
|
+
$typecsset-h3-size: 30px !default;
|
30
|
+
$typecsset-h4-size: 24px !default;
|
31
|
+
$typecsset-h5-size: 20px !default;
|
32
|
+
$typecsset-h6-size: 18px !default;
|
33
|
+
|
34
|
+
// Would you like indented (rather than spaced) paragraph delimiting?
|
35
|
+
$typecsset-indented-paragraphs: false !default;
|
36
|
+
|
37
|
+
// Would you like to show a baseline grid? This is handy during development.
|
38
|
+
$typecsset-show-baseline: false !default;
|
39
|
+
|
40
|
+
// Do not modify these variables; they are internal settings upon which the
|
41
|
+
// library depends.
|
42
|
+
$typecsset-magic-number: $typecsset-base-line-height;
|
43
|
+
$typecsset-magic-ratio: $typecsset-base-line-height / $typecsset-base-font-size;
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
//------------------------------------\\
|
50
|
+
// TOOLS
|
51
|
+
//------------------------------------\\
|
52
|
+
// Typecsset has a number of its own tools which it uses to generate its CSS
|
53
|
+
// more efficiently.
|
54
|
+
|
55
|
+
// Quickly generate a font-size in rems, with a pixel fallback, based on the
|
56
|
+
// value we pass into the mixin, e.g.:
|
57
|
+
//
|
58
|
+
// h1 {
|
59
|
+
// @include typecsset-font-size(24px);
|
60
|
+
// }
|
61
|
+
//
|
62
|
+
@mixin typecsset-font-size($font-size, $line-height: true) {
|
63
|
+
font-size: $font-size;
|
64
|
+
font-size: ($font-size / $typecsset-base-font-size) * 1rem;
|
65
|
+
|
66
|
+
@if $line-height == true {
|
67
|
+
line-height: ceil($font-size / $typecsset-base-line-height) * ($typecsset-base-line-height / $font-size);
|
68
|
+
}
|
69
|
+
|
70
|
+
}
|
71
|
+
|
72
|
+
// Space elements by an amount based on your magic number. Pass in the property
|
73
|
+
// to be indented as a paramater, e.g.:
|
74
|
+
//
|
75
|
+
// pre {
|
76
|
+
// @include typecsset-space(padding-left);
|
77
|
+
// }
|
78
|
+
//
|
79
|
+
@mixin typecsset-space($property) {
|
80
|
+
#{$property}: 2 * $typecsset-magic-number;
|
81
|
+
#{$property}: 2 * $typecsset-magic-ratio + rem;
|
82
|
+
}
|
83
|
+
|
84
|
+
// A small, internally-used function to remove the units from a given value.
|
85
|
+
@function typecsset-strip-units($number) {
|
86
|
+
@return $number / ($number * 0 + 1);
|
87
|
+
}
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
/*------------------------------------*\
|
94
|
+
#SHARED
|
95
|
+
\*------------------------------------*/
|
96
|
+
/**
|
97
|
+
* A lot of elements in Typecsset need to share some declarations (mainly for
|
98
|
+
* vertical rhythm), so we `@extend` some silent classes.
|
99
|
+
*/
|
100
|
+
%typecsset-reset {
|
101
|
+
margin: 0;
|
102
|
+
padding: 0;
|
103
|
+
}
|
104
|
+
|
105
|
+
%typecsset-vertical-rhythm {
|
106
|
+
@extend %typecsset-reset;
|
107
|
+
margin-bottom: $typecsset-magic-number;
|
108
|
+
margin-bottom: $typecsset-magic-ratio + rem;
|
109
|
+
}
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
|
114
|
+
|
115
|
+
/*------------------------------------*\
|
116
|
+
#BASE
|
117
|
+
\*------------------------------------*/
|
118
|
+
/**
|
119
|
+
* 1. Set the base element’s `font-size` to the value of your choosing. Set in
|
120
|
+
* ems, assuming a browser default of 16px.
|
121
|
+
* 2. Work out the unitless `line-height` for your project based around your
|
122
|
+
* desired `line-height` (defined previously in pixels), and your project’s
|
123
|
+
* base font size.
|
124
|
+
*/
|
125
|
+
|
126
|
+
@if $typecsset-show-baseline == true {
|
127
|
+
/**
|
128
|
+
* 3. If you have chosen to display a baseline grid, we turn it on here.
|
129
|
+
*/
|
130
|
+
}
|
131
|
+
|
132
|
+
html {
|
133
|
+
font-size: $typecsset-base-font-size / 16px + em; /* [1] */
|
134
|
+
line-height: $typecsset-base-line-height / $typecsset-base-font-size; /* [2] */
|
135
|
+
|
136
|
+
// If you have chosen to display a baseline grid, we turn it on here.
|
137
|
+
@if $typecsset-show-baseline == true {
|
138
|
+
|
139
|
+
$typecsset-baseline-size: typecsset-strip-units($typecsset-magic-number);
|
140
|
+
|
141
|
+
background-image: url(http://basehold.it/i/#{$typecsset-baseline-size}); /* [3] */
|
142
|
+
}
|
143
|
+
|
144
|
+
}
|
145
|
+
|
146
|
+
body {
|
147
|
+
margin: 0;
|
148
|
+
}
|
149
|
+
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
|
154
|
+
/*------------------------------------*\
|
155
|
+
#HEADINGS
|
156
|
+
\*------------------------------------*/
|
157
|
+
h1 {
|
158
|
+
@extend %typecsset-vertical-rhythm;
|
159
|
+
@include typecsset-font-size($typecsset-h1-size);
|
160
|
+
}
|
161
|
+
|
162
|
+
h2 {
|
163
|
+
@extend %typecsset-vertical-rhythm;
|
164
|
+
@include typecsset-font-size($typecsset-h2-size);
|
165
|
+
}
|
166
|
+
|
167
|
+
h3 {
|
168
|
+
@extend %typecsset-vertical-rhythm;
|
169
|
+
@include typecsset-font-size($typecsset-h3-size);
|
170
|
+
}
|
171
|
+
|
172
|
+
h4 {
|
173
|
+
@extend %typecsset-vertical-rhythm;
|
174
|
+
@include typecsset-font-size($typecsset-h4-size);
|
175
|
+
}
|
176
|
+
|
177
|
+
h5 {
|
178
|
+
@extend %typecsset-vertical-rhythm;
|
179
|
+
@include typecsset-font-size($typecsset-h5-size);
|
180
|
+
}
|
181
|
+
|
182
|
+
h6 {
|
183
|
+
@extend %typecsset-vertical-rhythm;
|
184
|
+
@include typecsset-font-size($typecsset-h6-size);
|
185
|
+
}
|
186
|
+
|
187
|
+
|
188
|
+
|
189
|
+
|
190
|
+
|
191
|
+
/*------------------------------------*\
|
192
|
+
#LISTS
|
193
|
+
\*------------------------------------*/
|
194
|
+
ul, ol, dd {
|
195
|
+
@extend %typecsset-vertical-rhythm;
|
196
|
+
@include typecsset-space(margin-left);
|
197
|
+
}
|
198
|
+
|
199
|
+
li > ul,
|
200
|
+
li > ol {
|
201
|
+
margin-bottom: 0;
|
202
|
+
}
|
203
|
+
|
204
|
+
|
205
|
+
|
206
|
+
|
207
|
+
|
208
|
+
/*------------------------------------*\
|
209
|
+
#PARAGRAPHS
|
210
|
+
\*------------------------------------*/
|
211
|
+
p {
|
212
|
+
@extend %typecsset-vertical-rhythm;
|
213
|
+
|
214
|
+
@if $typecsset-indented-paragraphs == true {
|
215
|
+
|
216
|
+
+ p {
|
217
|
+
@include typecsset-space(text-indent);
|
218
|
+
margin-top: -$typecsset-magic-number;
|
219
|
+
margin-top: -$typecsset-magic-ratio + rem;
|
220
|
+
}
|
221
|
+
|
222
|
+
}
|
223
|
+
|
224
|
+
}
|
225
|
+
|
226
|
+
/**
|
227
|
+
* Not strictly a paragraph, but probably doesn’t need its own section.
|
228
|
+
*/
|
229
|
+
address {
|
230
|
+
@extend %typecsset-vertical-rhythm;
|
231
|
+
}
|
232
|
+
|
233
|
+
|
234
|
+
|
235
|
+
|
236
|
+
|
237
|
+
/*------------------------------------*\
|
238
|
+
#CODE
|
239
|
+
\*------------------------------------*/
|
240
|
+
pre {
|
241
|
+
@extend %typecsset-vertical-rhythm;
|
242
|
+
}
|
243
|
+
|
244
|
+
/**
|
245
|
+
* 1. Fix an odd quirk whereby, without this, code blocks are rendered at a
|
246
|
+
* font-size smaller than 1em.
|
247
|
+
*/
|
248
|
+
code,
|
249
|
+
kbd,
|
250
|
+
pre,
|
251
|
+
samp {
|
252
|
+
font-family: monospace, monospace; /* [1] */
|
253
|
+
}
|
254
|
+
|
255
|
+
|
256
|
+
|
257
|
+
|
258
|
+
|
259
|
+
/*------------------------------------*\
|
260
|
+
#QUOTES
|
261
|
+
\*------------------------------------*/
|
262
|
+
/**
|
263
|
+
* 1. Hang the opening quote of the blockquote.
|
264
|
+
*/
|
265
|
+
blockquote {
|
266
|
+
text-indent: -0.41em; /* [1] */
|
267
|
+
}
|
268
|
+
|
269
|
+
/**
|
270
|
+
* Set up quote marks on quoting elements. This is very English-based, so we are
|
271
|
+
* using “, ”, ‘, and ’ quotes.
|
272
|
+
*/
|
273
|
+
blockquote {
|
274
|
+
@extend %typecsset-vertical-rhythm;
|
275
|
+
quotes: "“" "”";
|
276
|
+
@include typecsset-space(margin-left);
|
277
|
+
|
278
|
+
p {
|
279
|
+
|
280
|
+
&:before {
|
281
|
+
content: "“";
|
282
|
+
content: open-quote;
|
283
|
+
}
|
284
|
+
|
285
|
+
&:after {
|
286
|
+
content: "";
|
287
|
+
content: no-close-quote;
|
288
|
+
}
|
289
|
+
|
290
|
+
&:last-of-type:after {
|
291
|
+
content: "”";
|
292
|
+
content: close-quote;
|
293
|
+
}
|
294
|
+
|
295
|
+
}
|
296
|
+
|
297
|
+
}
|
298
|
+
|
299
|
+
q {
|
300
|
+
quotes: "‘" "’" "“" "”";
|
301
|
+
|
302
|
+
&:before {
|
303
|
+
content: "‘";
|
304
|
+
content: open-quote;
|
305
|
+
}
|
306
|
+
|
307
|
+
&:after {
|
308
|
+
content: "’";
|
309
|
+
content: close-quote;
|
310
|
+
}
|
311
|
+
|
312
|
+
q:before {
|
313
|
+
content: "“";
|
314
|
+
content: open-quote;
|
315
|
+
}
|
316
|
+
|
317
|
+
q:after{
|
318
|
+
content: "”";
|
319
|
+
content: close-quote;
|
320
|
+
}
|
321
|
+
|
322
|
+
/**
|
323
|
+
* If an element opens with an inline quote, let’s hang that.
|
324
|
+
*/
|
325
|
+
&:first-child {
|
326
|
+
display: inline-block;
|
327
|
+
text-indent: -0.22em;
|
328
|
+
}
|
329
|
+
|
330
|
+
}
|
331
|
+
|
332
|
+
|
333
|
+
|
334
|
+
|
335
|
+
|
336
|
+
/*------------------------------------*\
|
337
|
+
#TABLES
|
338
|
+
\*------------------------------------*/
|
339
|
+
/**
|
340
|
+
* Crude table styles; tables are very difficult to keep on the baseline.
|
341
|
+
*/
|
342
|
+
table {
|
343
|
+
@extend %typecsset-vertical-rhythm;
|
344
|
+
width: 100%;
|
345
|
+
border-collapse: collapse;
|
346
|
+
border-spacing: 0;
|
347
|
+
}
|
348
|
+
|
349
|
+
th,
|
350
|
+
td {
|
351
|
+
padding: $typecsset-base-line-height / 2;
|
352
|
+
}
|
@@ -0,0 +1,775 @@
|
|
1
|
+
/*!
|
2
|
+
Video.js Default Styles (http://videojs.com)
|
3
|
+
Version 4.4.3
|
4
|
+
Create your own skin at http://designer.videojs.com
|
5
|
+
*/
|
6
|
+
/* SKIN
|
7
|
+
================================================================================
|
8
|
+
The main class name for all skin-specific styles. To make your own skin,
|
9
|
+
replace all occurances of 'vjs-default-skin' with a new name. Then add your new
|
10
|
+
skin name to your video tag instead of the default skin.
|
11
|
+
e.g. <video class="video-js my-skin-name">
|
12
|
+
*/
|
13
|
+
.vjs-default-skin {
|
14
|
+
color: #cccccc;
|
15
|
+
}
|
16
|
+
/* Custom Icon Font
|
17
|
+
--------------------------------------------------------------------------------
|
18
|
+
The control icons are from a custom font. Each icon corresponds to a character
|
19
|
+
(e.g. "\e001"). Font icons allow for easy scaling and coloring of icons.
|
20
|
+
*/
|
21
|
+
@font-face {
|
22
|
+
font-family: 'VideoJS';
|
23
|
+
|
24
|
+
/*
|
25
|
+
* The following lines are commented out by Mario Visic
|
26
|
+
*
|
27
|
+
* The VideoJS font is already loaded using our external font loader, so
|
28
|
+
* there is no need here to attempt to load the fonts again. I'm keeping the
|
29
|
+
* source code here to make it obvious that I have altered it.
|
30
|
+
*
|
31
|
+
src: url('/assets/vjs.eot');
|
32
|
+
src: url('/assets/vjs.eot?#iefix') format('embedded-opentype'), url('/assets/vjs.woff') format('woff'), url('/assets/vjs.ttf') format('truetype');
|
33
|
+
*/
|
34
|
+
font-weight: normal;
|
35
|
+
font-style: normal;
|
36
|
+
}
|
37
|
+
/* Base UI Component Classes
|
38
|
+
--------------------------------------------------------------------------------
|
39
|
+
*/
|
40
|
+
/* Slider - used for Volume bar and Seek bar */
|
41
|
+
.vjs-default-skin .vjs-slider {
|
42
|
+
/* Replace browser focus hightlight with handle highlight */
|
43
|
+
outline: 0;
|
44
|
+
position: relative;
|
45
|
+
cursor: pointer;
|
46
|
+
padding: 0;
|
47
|
+
/* background-color-with-alpha */
|
48
|
+
background-color: #333333;
|
49
|
+
background-color: rgba(51, 51, 51, 0.9);
|
50
|
+
}
|
51
|
+
.vjs-default-skin .vjs-slider:focus {
|
52
|
+
/* box-shadow */
|
53
|
+
-webkit-box-shadow: 0 0 2em #ffffff;
|
54
|
+
-moz-box-shadow: 0 0 2em #ffffff;
|
55
|
+
box-shadow: 0 0 2em #ffffff;
|
56
|
+
}
|
57
|
+
.vjs-default-skin .vjs-slider-handle {
|
58
|
+
position: absolute;
|
59
|
+
/* Needed for IE6 */
|
60
|
+
left: 0;
|
61
|
+
top: 0;
|
62
|
+
}
|
63
|
+
.vjs-default-skin .vjs-slider-handle:before {
|
64
|
+
content: "\e009";
|
65
|
+
font-family: VideoJS;
|
66
|
+
font-size: 1em;
|
67
|
+
line-height: 1;
|
68
|
+
text-align: center;
|
69
|
+
text-shadow: 0em 0em 1em #fff;
|
70
|
+
position: absolute;
|
71
|
+
top: 0;
|
72
|
+
left: 0;
|
73
|
+
/* Rotate the square icon to make a diamond */
|
74
|
+
/* transform */
|
75
|
+
-webkit-transform: rotate(-45deg);
|
76
|
+
-moz-transform: rotate(-45deg);
|
77
|
+
-ms-transform: rotate(-45deg);
|
78
|
+
-o-transform: rotate(-45deg);
|
79
|
+
transform: rotate(-45deg);
|
80
|
+
}
|
81
|
+
/* Control Bar
|
82
|
+
--------------------------------------------------------------------------------
|
83
|
+
The default control bar that is a container for most of the controls.
|
84
|
+
*/
|
85
|
+
.vjs-default-skin .vjs-control-bar {
|
86
|
+
/* Start hidden */
|
87
|
+
display: none;
|
88
|
+
position: absolute;
|
89
|
+
/* Place control bar at the bottom of the player box/video.
|
90
|
+
If you want more margin below the control bar, add more height. */
|
91
|
+
bottom: 0;
|
92
|
+
/* Use left/right to stretch to 100% width of player div */
|
93
|
+
left: 0;
|
94
|
+
right: 0;
|
95
|
+
/* Height includes any margin you want above or below control items */
|
96
|
+
height: 3.0em;
|
97
|
+
/* background-color-with-alpha */
|
98
|
+
background-color: #07141e;
|
99
|
+
background-color: rgba(7, 20, 30, 0.7);
|
100
|
+
}
|
101
|
+
/* Show the control bar only once the video has started playing */
|
102
|
+
.vjs-default-skin.vjs-has-started .vjs-control-bar {
|
103
|
+
display: block;
|
104
|
+
/* Visibility needed to make sure things hide in older browsers too. */
|
105
|
+
|
106
|
+
visibility: visible;
|
107
|
+
opacity: 1;
|
108
|
+
/* transition */
|
109
|
+
-webkit-transition: visibility 0.1s, opacity 0.1s;
|
110
|
+
-moz-transition: visibility 0.1s, opacity 0.1s;
|
111
|
+
-o-transition: visibility 0.1s, opacity 0.1s;
|
112
|
+
transition: visibility 0.1s, opacity 0.1s;
|
113
|
+
}
|
114
|
+
/* Hide the control bar when the video is playing and the user is inactive */
|
115
|
+
.vjs-default-skin.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
|
116
|
+
display: block;
|
117
|
+
visibility: hidden;
|
118
|
+
opacity: 0;
|
119
|
+
/* transition */
|
120
|
+
-webkit-transition: visibility 1s, opacity 1s;
|
121
|
+
-moz-transition: visibility 1s, opacity 1s;
|
122
|
+
-o-transition: visibility 1s, opacity 1s;
|
123
|
+
transition: visibility 1s, opacity 1s;
|
124
|
+
}
|
125
|
+
.vjs-default-skin.vjs-controls-disabled .vjs-control-bar {
|
126
|
+
display: none;
|
127
|
+
}
|
128
|
+
.vjs-default-skin.vjs-using-native-controls .vjs-control-bar {
|
129
|
+
display: none;
|
130
|
+
}
|
131
|
+
/* IE8 is flakey with fonts, and you have to change the actual content to force
|
132
|
+
fonts to show/hide properly.
|
133
|
+
- "\9" IE8 hack didn't work for this
|
134
|
+
- Found in XP IE8 from http://modern.ie. Does not show up in "IE8 mode" in IE9
|
135
|
+
*/
|
136
|
+
@media \0screen {
|
137
|
+
.vjs-default-skin.vjs-user-inactive.vjs-playing .vjs-control-bar :before {
|
138
|
+
content: "";
|
139
|
+
}
|
140
|
+
}
|
141
|
+
/* General styles for individual controls. */
|
142
|
+
.vjs-default-skin .vjs-control {
|
143
|
+
outline: none;
|
144
|
+
position: relative;
|
145
|
+
float: left;
|
146
|
+
text-align: center;
|
147
|
+
margin: 0;
|
148
|
+
padding: 0;
|
149
|
+
height: 3.0em;
|
150
|
+
width: 4em;
|
151
|
+
}
|
152
|
+
/* FontAwsome button icons */
|
153
|
+
.vjs-default-skin .vjs-control:before {
|
154
|
+
font-family: VideoJS;
|
155
|
+
font-size: 1.5em;
|
156
|
+
line-height: 2;
|
157
|
+
position: absolute;
|
158
|
+
top: 0;
|
159
|
+
left: 0;
|
160
|
+
width: 100%;
|
161
|
+
height: 100%;
|
162
|
+
text-align: center;
|
163
|
+
text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
|
164
|
+
}
|
165
|
+
/* Replacement for focus outline */
|
166
|
+
.vjs-default-skin .vjs-control:focus:before,
|
167
|
+
.vjs-default-skin .vjs-control:hover:before {
|
168
|
+
text-shadow: 0em 0em 1em #ffffff;
|
169
|
+
}
|
170
|
+
.vjs-default-skin .vjs-control:focus {
|
171
|
+
/* outline: 0; */
|
172
|
+
/* keyboard-only users cannot see the focus on several of the UI elements when
|
173
|
+
this is set to 0 */
|
174
|
+
|
175
|
+
}
|
176
|
+
/* Hide control text visually, but have it available for screenreaders */
|
177
|
+
.vjs-default-skin .vjs-control-text {
|
178
|
+
/* hide-visually */
|
179
|
+
border: 0;
|
180
|
+
clip: rect(0 0 0 0);
|
181
|
+
height: 1px;
|
182
|
+
margin: -1px;
|
183
|
+
overflow: hidden;
|
184
|
+
padding: 0;
|
185
|
+
position: absolute;
|
186
|
+
width: 1px;
|
187
|
+
}
|
188
|
+
/* Play/Pause
|
189
|
+
--------------------------------------------------------------------------------
|
190
|
+
*/
|
191
|
+
.vjs-default-skin .vjs-play-control {
|
192
|
+
width: 5em;
|
193
|
+
cursor: pointer;
|
194
|
+
}
|
195
|
+
.vjs-default-skin .vjs-play-control:before {
|
196
|
+
content: "\e001";
|
197
|
+
}
|
198
|
+
.vjs-default-skin.vjs-playing .vjs-play-control:before {
|
199
|
+
content: "\e002";
|
200
|
+
}
|
201
|
+
/* Volume/Mute
|
202
|
+
-------------------------------------------------------------------------------- */
|
203
|
+
.vjs-default-skin .vjs-mute-control,
|
204
|
+
.vjs-default-skin .vjs-volume-menu-button {
|
205
|
+
cursor: pointer;
|
206
|
+
float: right;
|
207
|
+
}
|
208
|
+
.vjs-default-skin .vjs-mute-control:before,
|
209
|
+
.vjs-default-skin .vjs-volume-menu-button:before {
|
210
|
+
content: "\e006";
|
211
|
+
}
|
212
|
+
.vjs-default-skin .vjs-mute-control.vjs-vol-0:before,
|
213
|
+
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-0:before {
|
214
|
+
content: "\e003";
|
215
|
+
}
|
216
|
+
.vjs-default-skin .vjs-mute-control.vjs-vol-1:before,
|
217
|
+
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-1:before {
|
218
|
+
content: "\e004";
|
219
|
+
}
|
220
|
+
.vjs-default-skin .vjs-mute-control.vjs-vol-2:before,
|
221
|
+
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-2:before {
|
222
|
+
content: "\e005";
|
223
|
+
}
|
224
|
+
.vjs-default-skin .vjs-volume-control {
|
225
|
+
width: 5em;
|
226
|
+
float: right;
|
227
|
+
}
|
228
|
+
.vjs-default-skin .vjs-volume-bar {
|
229
|
+
width: 5em;
|
230
|
+
height: 0.6em;
|
231
|
+
margin: 1.1em auto 0;
|
232
|
+
}
|
233
|
+
.vjs-default-skin .vjs-volume-menu-button .vjs-menu-content {
|
234
|
+
height: 2.9em;
|
235
|
+
}
|
236
|
+
.vjs-default-skin .vjs-volume-level {
|
237
|
+
position: absolute;
|
238
|
+
top: 0;
|
239
|
+
left: 0;
|
240
|
+
height: 0.5em;
|
241
|
+
background: #66a8cc url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC) -50% 0 repeat;
|
242
|
+
}
|
243
|
+
.vjs-default-skin .vjs-volume-bar .vjs-volume-handle {
|
244
|
+
width: 0.5em;
|
245
|
+
height: 0.5em;
|
246
|
+
}
|
247
|
+
.vjs-default-skin .vjs-volume-handle:before {
|
248
|
+
font-size: 0.9em;
|
249
|
+
top: -0.2em;
|
250
|
+
left: -0.2em;
|
251
|
+
width: 1em;
|
252
|
+
height: 1em;
|
253
|
+
}
|
254
|
+
.vjs-default-skin .vjs-volume-menu-button .vjs-menu .vjs-menu-content {
|
255
|
+
width: 6em;
|
256
|
+
left: -4em;
|
257
|
+
}
|
258
|
+
/* Progress
|
259
|
+
--------------------------------------------------------------------------------
|
260
|
+
*/
|
261
|
+
.vjs-default-skin .vjs-progress-control {
|
262
|
+
position: absolute;
|
263
|
+
left: 0;
|
264
|
+
right: 0;
|
265
|
+
width: auto;
|
266
|
+
font-size: 0.3em;
|
267
|
+
height: 1em;
|
268
|
+
/* Set above the rest of the controls. */
|
269
|
+
top: -1em;
|
270
|
+
/* Shrink the bar slower than it grows. */
|
271
|
+
/* transition */
|
272
|
+
-webkit-transition: all 0.4s;
|
273
|
+
-moz-transition: all 0.4s;
|
274
|
+
-o-transition: all 0.4s;
|
275
|
+
transition: all 0.4s;
|
276
|
+
}
|
277
|
+
/* On hover, make the progress bar grow to something that's more clickable.
|
278
|
+
This simply changes the overall font for the progress bar, and this
|
279
|
+
updates both the em-based widths and heights, as wells as the icon font */
|
280
|
+
.vjs-default-skin:hover .vjs-progress-control {
|
281
|
+
font-size: .9em;
|
282
|
+
/* Even though we're not changing the top/height, we need to include them in
|
283
|
+
the transition so they're handled correctly. */
|
284
|
+
|
285
|
+
/* transition */
|
286
|
+
-webkit-transition: all 0.2s;
|
287
|
+
-moz-transition: all 0.2s;
|
288
|
+
-o-transition: all 0.2s;
|
289
|
+
transition: all 0.2s;
|
290
|
+
}
|
291
|
+
/* Box containing play and load progresses. Also acts as seek scrubber. */
|
292
|
+
.vjs-default-skin .vjs-progress-holder {
|
293
|
+
height: 100%;
|
294
|
+
}
|
295
|
+
/* Progress Bars */
|
296
|
+
.vjs-default-skin .vjs-progress-holder .vjs-play-progress,
|
297
|
+
.vjs-default-skin .vjs-progress-holder .vjs-load-progress {
|
298
|
+
position: absolute;
|
299
|
+
display: block;
|
300
|
+
height: 100%;
|
301
|
+
margin: 0;
|
302
|
+
padding: 0;
|
303
|
+
/* Needed for IE6 */
|
304
|
+
left: 0;
|
305
|
+
top: 0;
|
306
|
+
}
|
307
|
+
.vjs-default-skin .vjs-play-progress {
|
308
|
+
/*
|
309
|
+
Using a data URI to create the white diagonal lines with a transparent
|
310
|
+
background. Surprisingly works in IE8.
|
311
|
+
Created using http://www.patternify.com
|
312
|
+
Changing the first color value will change the bar color.
|
313
|
+
Also using a paralax effect to make the lines move backwards.
|
314
|
+
The -50% left position makes that happen.
|
315
|
+
*/
|
316
|
+
|
317
|
+
background: #66a8cc url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC) -50% 0 repeat;
|
318
|
+
}
|
319
|
+
.vjs-default-skin .vjs-load-progress {
|
320
|
+
background: #646464 /* IE8- Fallback */;
|
321
|
+
background: rgba(255, 255, 255, 0.4);
|
322
|
+
}
|
323
|
+
.vjs-default-skin .vjs-seek-handle {
|
324
|
+
width: 1.5em;
|
325
|
+
height: 100%;
|
326
|
+
}
|
327
|
+
.vjs-default-skin .vjs-seek-handle:before {
|
328
|
+
padding-top: 0.1em /* Minor adjustment */;
|
329
|
+
}
|
330
|
+
/* Time Display
|
331
|
+
--------------------------------------------------------------------------------
|
332
|
+
*/
|
333
|
+
.vjs-default-skin .vjs-time-controls {
|
334
|
+
font-size: 1em;
|
335
|
+
/* Align vertically by making the line height the same as the control bar */
|
336
|
+
line-height: 3em;
|
337
|
+
}
|
338
|
+
.vjs-default-skin .vjs-current-time {
|
339
|
+
float: left;
|
340
|
+
}
|
341
|
+
.vjs-default-skin .vjs-duration {
|
342
|
+
float: left;
|
343
|
+
}
|
344
|
+
/* Remaining time is in the HTML, but not included in default design */
|
345
|
+
.vjs-default-skin .vjs-remaining-time {
|
346
|
+
display: none;
|
347
|
+
float: left;
|
348
|
+
}
|
349
|
+
.vjs-time-divider {
|
350
|
+
float: left;
|
351
|
+
line-height: 3em;
|
352
|
+
}
|
353
|
+
/* Fullscreen
|
354
|
+
--------------------------------------------------------------------------------
|
355
|
+
*/
|
356
|
+
.vjs-default-skin .vjs-fullscreen-control {
|
357
|
+
width: 3.8em;
|
358
|
+
cursor: pointer;
|
359
|
+
float: right;
|
360
|
+
}
|
361
|
+
.vjs-default-skin .vjs-fullscreen-control:before {
|
362
|
+
content: "\e000";
|
363
|
+
}
|
364
|
+
/* Switch to the exit icon when the player is in fullscreen */
|
365
|
+
.vjs-default-skin.vjs-fullscreen .vjs-fullscreen-control:before {
|
366
|
+
content: "\e00b";
|
367
|
+
}
|
368
|
+
/* Big Play Button (play button at start)
|
369
|
+
--------------------------------------------------------------------------------
|
370
|
+
Positioning of the play button in the center or other corners can be done more
|
371
|
+
easily in the skin designer. http://designer.videojs.com/
|
372
|
+
*/
|
373
|
+
.vjs-default-skin .vjs-big-play-button {
|
374
|
+
left: 0.5em;
|
375
|
+
top: 0.5em;
|
376
|
+
font-size: 3em;
|
377
|
+
display: block;
|
378
|
+
z-index: 2;
|
379
|
+
position: absolute;
|
380
|
+
width: 4em;
|
381
|
+
height: 2.6em;
|
382
|
+
text-align: center;
|
383
|
+
vertical-align: middle;
|
384
|
+
cursor: pointer;
|
385
|
+
opacity: 1;
|
386
|
+
/* Need a slightly gray bg so it can be seen on black backgrounds */
|
387
|
+
/* background-color-with-alpha */
|
388
|
+
background-color: #07141e;
|
389
|
+
background-color: rgba(7, 20, 30, 0.7);
|
390
|
+
border: 0.1em solid #3b4249;
|
391
|
+
/* border-radius */
|
392
|
+
-webkit-border-radius: 0.8em;
|
393
|
+
-moz-border-radius: 0.8em;
|
394
|
+
border-radius: 0.8em;
|
395
|
+
/* box-shadow */
|
396
|
+
-webkit-box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25);
|
397
|
+
-moz-box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25);
|
398
|
+
box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25);
|
399
|
+
/* transition */
|
400
|
+
-webkit-transition: all 0.4s;
|
401
|
+
-moz-transition: all 0.4s;
|
402
|
+
-o-transition: all 0.4s;
|
403
|
+
transition: all 0.4s;
|
404
|
+
}
|
405
|
+
/* Optionally center */
|
406
|
+
.vjs-default-skin.vjs-big-play-centered .vjs-big-play-button {
|
407
|
+
/* Center it horizontally */
|
408
|
+
left: 50%;
|
409
|
+
margin-left: -2.1em;
|
410
|
+
/* Center it vertically */
|
411
|
+
top: 50%;
|
412
|
+
margin-top: -1.4000000000000001em;
|
413
|
+
}
|
414
|
+
/* Hide if controls are disabled */
|
415
|
+
.vjs-default-skin.vjs-controls-disabled .vjs-big-play-button {
|
416
|
+
display: none;
|
417
|
+
}
|
418
|
+
/* Hide when video starts playing */
|
419
|
+
.vjs-default-skin.vjs-has-started .vjs-big-play-button {
|
420
|
+
display: none;
|
421
|
+
}
|
422
|
+
/* Hide on mobile devices. Remove when we stop using native controls
|
423
|
+
by default on mobile */
|
424
|
+
.vjs-default-skin.vjs-using-native-controls .vjs-big-play-button {
|
425
|
+
display: none;
|
426
|
+
}
|
427
|
+
.vjs-default-skin:hover .vjs-big-play-button,
|
428
|
+
.vjs-default-skin .vjs-big-play-button:focus {
|
429
|
+
outline: 0;
|
430
|
+
border-color: #fff;
|
431
|
+
/* IE8 needs a non-glow hover state */
|
432
|
+
background-color: #505050;
|
433
|
+
background-color: rgba(50, 50, 50, 0.75);
|
434
|
+
/* box-shadow */
|
435
|
+
-webkit-box-shadow: 0 0 3em #ffffff;
|
436
|
+
-moz-box-shadow: 0 0 3em #ffffff;
|
437
|
+
box-shadow: 0 0 3em #ffffff;
|
438
|
+
/* transition */
|
439
|
+
-webkit-transition: all 0s;
|
440
|
+
-moz-transition: all 0s;
|
441
|
+
-o-transition: all 0s;
|
442
|
+
transition: all 0s;
|
443
|
+
}
|
444
|
+
.vjs-default-skin .vjs-big-play-button:before {
|
445
|
+
content: "\e001";
|
446
|
+
font-family: VideoJS;
|
447
|
+
/* In order to center the play icon vertically we need to set the line height
|
448
|
+
to the same as the button height */
|
449
|
+
|
450
|
+
line-height: 2.6em;
|
451
|
+
text-shadow: 0.05em 0.05em 0.1em #000;
|
452
|
+
text-align: center /* Needed for IE8 */;
|
453
|
+
position: absolute;
|
454
|
+
left: 0;
|
455
|
+
width: 100%;
|
456
|
+
height: 100%;
|
457
|
+
}
|
458
|
+
/* Loading Spinner
|
459
|
+
--------------------------------------------------------------------------------
|
460
|
+
*/
|
461
|
+
.vjs-loading-spinner {
|
462
|
+
display: none;
|
463
|
+
position: absolute;
|
464
|
+
top: 50%;
|
465
|
+
left: 50%;
|
466
|
+
font-size: 4em;
|
467
|
+
line-height: 1;
|
468
|
+
width: 1em;
|
469
|
+
height: 1em;
|
470
|
+
margin-left: -0.5em;
|
471
|
+
margin-top: -0.5em;
|
472
|
+
opacity: 0.75;
|
473
|
+
/* animation */
|
474
|
+
-webkit-animation: spin 1.5s infinite linear;
|
475
|
+
-moz-animation: spin 1.5s infinite linear;
|
476
|
+
-o-animation: spin 1.5s infinite linear;
|
477
|
+
animation: spin 1.5s infinite linear;
|
478
|
+
}
|
479
|
+
.vjs-default-skin .vjs-loading-spinner:before {
|
480
|
+
content: "\e01e";
|
481
|
+
font-family: VideoJS;
|
482
|
+
position: absolute;
|
483
|
+
top: 0;
|
484
|
+
left: 0;
|
485
|
+
width: 1em;
|
486
|
+
height: 1em;
|
487
|
+
text-align: center;
|
488
|
+
text-shadow: 0em 0em 0.1em #000;
|
489
|
+
}
|
490
|
+
@-moz-keyframes spin {
|
491
|
+
0% {
|
492
|
+
-moz-transform: rotate(0deg);
|
493
|
+
}
|
494
|
+
100% {
|
495
|
+
-moz-transform: rotate(359deg);
|
496
|
+
}
|
497
|
+
}
|
498
|
+
@-webkit-keyframes spin {
|
499
|
+
0% {
|
500
|
+
-webkit-transform: rotate(0deg);
|
501
|
+
}
|
502
|
+
100% {
|
503
|
+
-webkit-transform: rotate(359deg);
|
504
|
+
}
|
505
|
+
}
|
506
|
+
@-o-keyframes spin {
|
507
|
+
0% {
|
508
|
+
-o-transform: rotate(0deg);
|
509
|
+
}
|
510
|
+
100% {
|
511
|
+
-o-transform: rotate(359deg);
|
512
|
+
}
|
513
|
+
}
|
514
|
+
@keyframes spin {
|
515
|
+
0% {
|
516
|
+
transform: rotate(0deg);
|
517
|
+
}
|
518
|
+
100% {
|
519
|
+
transform: rotate(359deg);
|
520
|
+
}
|
521
|
+
}
|
522
|
+
/* Menu Buttons (Captions/Subtitles/etc.)
|
523
|
+
--------------------------------------------------------------------------------
|
524
|
+
*/
|
525
|
+
.vjs-default-skin .vjs-menu-button {
|
526
|
+
float: right;
|
527
|
+
cursor: pointer;
|
528
|
+
}
|
529
|
+
.vjs-default-skin .vjs-menu {
|
530
|
+
display: none;
|
531
|
+
position: absolute;
|
532
|
+
bottom: 0;
|
533
|
+
left: 0em;
|
534
|
+
/* (Width of vjs-menu - width of button) / 2 */
|
535
|
+
|
536
|
+
width: 0em;
|
537
|
+
height: 0em;
|
538
|
+
margin-bottom: 3em;
|
539
|
+
border-left: 2em solid transparent;
|
540
|
+
border-right: 2em solid transparent;
|
541
|
+
border-top: 1.55em solid #000000;
|
542
|
+
/* Same width top as ul bottom */
|
543
|
+
|
544
|
+
border-top-color: rgba(7, 40, 50, 0.5);
|
545
|
+
/* Same as ul background */
|
546
|
+
|
547
|
+
}
|
548
|
+
/* Button Pop-up Menu */
|
549
|
+
.vjs-default-skin .vjs-menu-button .vjs-menu .vjs-menu-content {
|
550
|
+
display: block;
|
551
|
+
padding: 0;
|
552
|
+
margin: 0;
|
553
|
+
position: absolute;
|
554
|
+
width: 10em;
|
555
|
+
bottom: 1.5em;
|
556
|
+
/* Same bottom as vjs-menu border-top */
|
557
|
+
|
558
|
+
max-height: 15em;
|
559
|
+
overflow: auto;
|
560
|
+
left: -5em;
|
561
|
+
/* Width of menu - width of button / 2 */
|
562
|
+
|
563
|
+
/* background-color-with-alpha */
|
564
|
+
background-color: #07141e;
|
565
|
+
background-color: rgba(7, 20, 30, 0.7);
|
566
|
+
/* box-shadow */
|
567
|
+
-webkit-box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2);
|
568
|
+
-moz-box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2);
|
569
|
+
box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2);
|
570
|
+
}
|
571
|
+
.vjs-default-skin .vjs-menu-button:hover .vjs-menu {
|
572
|
+
display: block;
|
573
|
+
}
|
574
|
+
.vjs-default-skin .vjs-menu-button ul li {
|
575
|
+
list-style: none;
|
576
|
+
margin: 0;
|
577
|
+
padding: 0.3em 0 0.3em 0;
|
578
|
+
line-height: 1.4em;
|
579
|
+
font-size: 1.2em;
|
580
|
+
text-align: center;
|
581
|
+
text-transform: lowercase;
|
582
|
+
}
|
583
|
+
.vjs-default-skin .vjs-menu-button ul li.vjs-selected {
|
584
|
+
background-color: #000;
|
585
|
+
}
|
586
|
+
.vjs-default-skin .vjs-menu-button ul li:focus,
|
587
|
+
.vjs-default-skin .vjs-menu-button ul li:hover,
|
588
|
+
.vjs-default-skin .vjs-menu-button ul li.vjs-selected:focus,
|
589
|
+
.vjs-default-skin .vjs-menu-button ul li.vjs-selected:hover {
|
590
|
+
outline: 0;
|
591
|
+
color: #111;
|
592
|
+
/* background-color-with-alpha */
|
593
|
+
background-color: #ffffff;
|
594
|
+
background-color: rgba(255, 255, 255, 0.75);
|
595
|
+
/* box-shadow */
|
596
|
+
-webkit-box-shadow: 0 0 1em #ffffff;
|
597
|
+
-moz-box-shadow: 0 0 1em #ffffff;
|
598
|
+
box-shadow: 0 0 1em #ffffff;
|
599
|
+
}
|
600
|
+
.vjs-default-skin .vjs-menu-button ul li.vjs-menu-title {
|
601
|
+
text-align: center;
|
602
|
+
text-transform: uppercase;
|
603
|
+
font-size: 1em;
|
604
|
+
line-height: 2em;
|
605
|
+
padding: 0;
|
606
|
+
margin: 0 0 0.3em 0;
|
607
|
+
font-weight: bold;
|
608
|
+
cursor: default;
|
609
|
+
}
|
610
|
+
/* Subtitles Button */
|
611
|
+
.vjs-default-skin .vjs-subtitles-button:before {
|
612
|
+
content: "\e00c";
|
613
|
+
}
|
614
|
+
/* Captions Button */
|
615
|
+
.vjs-default-skin .vjs-captions-button:before {
|
616
|
+
content: "\e008";
|
617
|
+
}
|
618
|
+
/* Replacement for focus outline */
|
619
|
+
.vjs-default-skin .vjs-captions-button:focus .vjs-control-content:before,
|
620
|
+
.vjs-default-skin .vjs-captions-button:hover .vjs-control-content:before {
|
621
|
+
/* box-shadow */
|
622
|
+
-webkit-box-shadow: 0 0 1em #ffffff;
|
623
|
+
-moz-box-shadow: 0 0 1em #ffffff;
|
624
|
+
box-shadow: 0 0 1em #ffffff;
|
625
|
+
}
|
626
|
+
/*
|
627
|
+
REQUIRED STYLES (be careful overriding)
|
628
|
+
================================================================================
|
629
|
+
When loading the player, the video tag is replaced with a DIV,
|
630
|
+
that will hold the video tag or object tag for other playback methods.
|
631
|
+
The div contains the video playback element (Flash or HTML5) and controls,
|
632
|
+
and sets the width and height of the video.
|
633
|
+
|
634
|
+
** If you want to add some kind of border/padding (e.g. a frame), or special
|
635
|
+
positioning, use another containing element. Otherwise you risk messing up
|
636
|
+
control positioning and full window mode. **
|
637
|
+
*/
|
638
|
+
.video-js {
|
639
|
+
background-color: #000;
|
640
|
+
position: relative;
|
641
|
+
padding: 0;
|
642
|
+
/* Start with 10px for base font size so other dimensions can be em based and
|
643
|
+
easily calculable. */
|
644
|
+
|
645
|
+
font-size: 10px;
|
646
|
+
/* Allow poster to be vertially aligned. */
|
647
|
+
|
648
|
+
vertical-align: middle;
|
649
|
+
/* display: table-cell; */
|
650
|
+
/*This works in Safari but not Firefox.*/
|
651
|
+
|
652
|
+
/* Provide some basic defaults for fonts */
|
653
|
+
|
654
|
+
font-weight: normal;
|
655
|
+
font-style: normal;
|
656
|
+
/* Avoiding helvetica: issue #376 */
|
657
|
+
|
658
|
+
font-family: Arial, sans-serif;
|
659
|
+
/* Turn off user selection (text highlighting) by default.
|
660
|
+
The majority of player components will not be text blocks.
|
661
|
+
Text areas will need to turn user selection back on. */
|
662
|
+
|
663
|
+
/* user-select */
|
664
|
+
-webkit-user-select: none;
|
665
|
+
-moz-user-select: none;
|
666
|
+
-ms-user-select: none;
|
667
|
+
user-select: none;
|
668
|
+
}
|
669
|
+
/* Playback technology elements expand to the width/height of the containing div
|
670
|
+
<video> or <object> */
|
671
|
+
.video-js .vjs-tech {
|
672
|
+
position: absolute;
|
673
|
+
top: 0;
|
674
|
+
left: 0;
|
675
|
+
width: 100%;
|
676
|
+
height: 100%;
|
677
|
+
}
|
678
|
+
/* Fix for Firefox 9 fullscreen (only if it is enabled). Not needed when
|
679
|
+
checking fullScreenEnabled. */
|
680
|
+
.video-js:-moz-full-screen {
|
681
|
+
position: absolute;
|
682
|
+
}
|
683
|
+
/* Fullscreen Styles */
|
684
|
+
body.vjs-full-window {
|
685
|
+
padding: 0;
|
686
|
+
margin: 0;
|
687
|
+
height: 100%;
|
688
|
+
/* Fix for IE6 full-window. http://www.cssplay.co.uk/layouts/fixed.html */
|
689
|
+
overflow-y: auto;
|
690
|
+
}
|
691
|
+
.video-js.vjs-fullscreen {
|
692
|
+
position: fixed;
|
693
|
+
overflow: hidden;
|
694
|
+
z-index: 1000;
|
695
|
+
left: 0;
|
696
|
+
top: 0;
|
697
|
+
bottom: 0;
|
698
|
+
right: 0;
|
699
|
+
width: 100% !important;
|
700
|
+
height: 100% !important;
|
701
|
+
/* IE6 full-window (underscore hack) */
|
702
|
+
_position: absolute;
|
703
|
+
}
|
704
|
+
.video-js:-webkit-full-screen {
|
705
|
+
width: 100% !important;
|
706
|
+
height: 100% !important;
|
707
|
+
}
|
708
|
+
.video-js.vjs-fullscreen.vjs-user-inactive {
|
709
|
+
cursor: none;
|
710
|
+
}
|
711
|
+
/* Poster Styles */
|
712
|
+
.vjs-poster {
|
713
|
+
background-repeat: no-repeat;
|
714
|
+
background-position: 50% 50%;
|
715
|
+
background-size: contain;
|
716
|
+
cursor: pointer;
|
717
|
+
height: 100%;
|
718
|
+
margin: 0;
|
719
|
+
padding: 0;
|
720
|
+
position: relative;
|
721
|
+
width: 100%;
|
722
|
+
}
|
723
|
+
.vjs-poster img {
|
724
|
+
display: block;
|
725
|
+
margin: 0 auto;
|
726
|
+
max-height: 100%;
|
727
|
+
padding: 0;
|
728
|
+
width: 100%;
|
729
|
+
}
|
730
|
+
/* Hide the poster when native controls are used otherwise it covers them */
|
731
|
+
.video-js.vjs-using-native-controls .vjs-poster {
|
732
|
+
display: none;
|
733
|
+
}
|
734
|
+
/* Text Track Styles */
|
735
|
+
/* Overall track holder for both captions and subtitles */
|
736
|
+
.video-js .vjs-text-track-display {
|
737
|
+
text-align: center;
|
738
|
+
position: absolute;
|
739
|
+
bottom: 4em;
|
740
|
+
/* Leave padding on left and right */
|
741
|
+
left: 1em;
|
742
|
+
right: 1em;
|
743
|
+
}
|
744
|
+
/* Individual tracks */
|
745
|
+
.video-js .vjs-text-track {
|
746
|
+
display: none;
|
747
|
+
font-size: 1.4em;
|
748
|
+
text-align: center;
|
749
|
+
margin-bottom: 0.1em;
|
750
|
+
/* Transparent black background, or fallback to all black (oldIE) */
|
751
|
+
/* background-color-with-alpha */
|
752
|
+
background-color: #000000;
|
753
|
+
background-color: rgba(0, 0, 0, 0.5);
|
754
|
+
}
|
755
|
+
.video-js .vjs-subtitles {
|
756
|
+
color: #ffffff /* Subtitles are white */;
|
757
|
+
}
|
758
|
+
.video-js .vjs-captions {
|
759
|
+
color: #ffcc66 /* Captions are yellow */;
|
760
|
+
}
|
761
|
+
.vjs-tt-cue {
|
762
|
+
display: block;
|
763
|
+
}
|
764
|
+
/* Hide disabled or unsupported controls */
|
765
|
+
.vjs-default-skin .vjs-hidden {
|
766
|
+
display: none;
|
767
|
+
}
|
768
|
+
.vjs-lock-showing {
|
769
|
+
display: block !important;
|
770
|
+
opacity: 1;
|
771
|
+
visibility: visible;
|
772
|
+
}
|
773
|
+
/* -----------------------------------------------------------------------------
|
774
|
+
The original source of this file lives at
|
775
|
+
https://github.com/videojs/video.js/blob/master/src/css/video-js.less */
|