github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/public/libs/video-js/video-js.css (about) 1 /*! 2 Video.js Default Styles (http://videojs.com) 3 Version 4.8.5 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 src: url('font/vjs.eot'); 24 src: url('font/vjs.eot?#iefix') format('embedded-opentype'), url('font/vjs.woff') format('woff'), url('font/vjs.ttf') format('truetype'), url('font/vjs.svg#icomoon') format('svg'); 25 font-weight: normal; 26 font-style: normal; 27 } 28 /* Base UI Component Classes 29 -------------------------------------------------------------------------------- 30 */ 31 /* Slider - used for Volume bar and Seek bar */ 32 .vjs-default-skin .vjs-slider { 33 /* Replace browser focus hightlight with handle highlight */ 34 outline: 0; 35 position: relative; 36 cursor: pointer; 37 padding: 0; 38 /* background-color-with-alpha */ 39 background-color: #333333; 40 background-color: rgba(51, 51, 51, 0.9); 41 } 42 .vjs-default-skin .vjs-slider:focus { 43 /* box-shadow */ 44 -webkit-box-shadow: 0 0 2em #ffffff; 45 -moz-box-shadow: 0 0 2em #ffffff; 46 box-shadow: 0 0 2em #ffffff; 47 } 48 .vjs-default-skin .vjs-slider-handle { 49 position: absolute; 50 /* Needed for IE6 */ 51 left: 0; 52 top: 0; 53 } 54 .vjs-default-skin .vjs-slider-handle:before { 55 content: "\e009"; 56 font-family: VideoJS; 57 font-size: 1em; 58 line-height: 1; 59 text-align: center; 60 text-shadow: 0em 0em 1em #fff; 61 position: absolute; 62 top: 0; 63 left: 0; 64 /* Rotate the square icon to make a diamond */ 65 /* transform */ 66 -webkit-transform: rotate(-45deg); 67 -moz-transform: rotate(-45deg); 68 -ms-transform: rotate(-45deg); 69 -o-transform: rotate(-45deg); 70 transform: rotate(-45deg); 71 } 72 /* Control Bar 73 -------------------------------------------------------------------------------- 74 The default control bar that is a container for most of the controls. 75 */ 76 .vjs-default-skin .vjs-control-bar { 77 /* Start hidden */ 78 display: none; 79 position: absolute; 80 /* Place control bar at the bottom of the player box/video. 81 If you want more margin below the control bar, add more height. */ 82 bottom: 0; 83 /* Use left/right to stretch to 100% width of player div */ 84 left: 0; 85 right: 0; 86 /* Height includes any margin you want above or below control items */ 87 height: 3.0em; 88 /* background-color-with-alpha */ 89 background-color: #07141e; 90 background-color: rgba(7, 20, 30, 0.7); 91 } 92 /* Show the control bar only once the video has started playing */ 93 .vjs-default-skin.vjs-has-started .vjs-control-bar { 94 display: block; 95 /* Visibility needed to make sure things hide in older browsers too. */ 96 97 visibility: visible; 98 opacity: 1; 99 /* transition */ 100 -webkit-transition: visibility 0.1s, opacity 0.1s; 101 -moz-transition: visibility 0.1s, opacity 0.1s; 102 -o-transition: visibility 0.1s, opacity 0.1s; 103 transition: visibility 0.1s, opacity 0.1s; 104 } 105 /* Hide the control bar when the video is playing and the user is inactive */ 106 .vjs-default-skin.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar { 107 display: block; 108 visibility: hidden; 109 opacity: 0; 110 /* transition */ 111 -webkit-transition: visibility 1s, opacity 1s; 112 -moz-transition: visibility 1s, opacity 1s; 113 -o-transition: visibility 1s, opacity 1s; 114 transition: visibility 1s, opacity 1s; 115 } 116 .vjs-default-skin.vjs-controls-disabled .vjs-control-bar { 117 display: none; 118 } 119 .vjs-default-skin.vjs-using-native-controls .vjs-control-bar { 120 display: none; 121 } 122 /* The control bar shouldn't show after an error */ 123 .vjs-default-skin.vjs-error .vjs-control-bar { 124 display: none; 125 } 126 /* IE8 is flakey with fonts, and you have to change the actual content to force 127 fonts to show/hide properly. 128 - "\9" IE8 hack didn't work for this 129 - Found in XP IE8 from http://modern.ie. Does not show up in "IE8 mode" in IE9 130 */ 131 @media \0screen { 132 .vjs-default-skin.vjs-user-inactive.vjs-playing .vjs-control-bar :before { 133 content: ""; 134 } 135 } 136 /* General styles for individual controls. */ 137 .vjs-default-skin .vjs-control { 138 outline: none; 139 position: relative; 140 float: left; 141 text-align: center; 142 margin: 0; 143 padding: 0; 144 height: 3.0em; 145 width: 4em; 146 } 147 /* FontAwsome button icons */ 148 .vjs-default-skin .vjs-control:before { 149 font-family: VideoJS; 150 font-size: 1.5em; 151 line-height: 2; 152 position: absolute; 153 top: 0; 154 left: 0; 155 width: 100%; 156 height: 100%; 157 text-align: center; 158 text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5); 159 } 160 /* Replacement for focus outline */ 161 .vjs-default-skin .vjs-control:focus:before, 162 .vjs-default-skin .vjs-control:hover:before { 163 text-shadow: 0em 0em 1em #ffffff; 164 } 165 .vjs-default-skin .vjs-control:focus { 166 /* outline: 0; */ 167 /* keyboard-only users cannot see the focus on several of the UI elements when 168 this is set to 0 */ 169 170 } 171 /* Hide control text visually, but have it available for screenreaders */ 172 .vjs-default-skin .vjs-control-text { 173 /* hide-visually */ 174 border: 0; 175 clip: rect(0 0 0 0); 176 height: 1px; 177 margin: -1px; 178 overflow: hidden; 179 padding: 0; 180 position: absolute; 181 width: 1px; 182 } 183 /* Play/Pause 184 -------------------------------------------------------------------------------- 185 */ 186 .vjs-default-skin .vjs-play-control { 187 width: 5em; 188 cursor: pointer; 189 } 190 .vjs-default-skin .vjs-play-control:before { 191 content: "\e001"; 192 } 193 .vjs-default-skin.vjs-playing .vjs-play-control:before { 194 content: "\e002"; 195 } 196 /* Playback toggle 197 -------------------------------------------------------------------------------- 198 */ 199 .vjs-default-skin .vjs-playback-rate .vjs-playback-rate-value { 200 font-size: 1.5em; 201 line-height: 2; 202 position: absolute; 203 top: 0; 204 left: 0; 205 width: 100%; 206 height: 100%; 207 text-align: center; 208 text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5); 209 } 210 .vjs-default-skin .vjs-playback-rate.vjs-menu-button .vjs-menu .vjs-menu-content { 211 width: 4em; 212 left: -2em; 213 list-style: none; 214 } 215 /* Volume/Mute 216 -------------------------------------------------------------------------------- */ 217 .vjs-default-skin .vjs-mute-control, 218 .vjs-default-skin .vjs-volume-menu-button { 219 cursor: pointer; 220 float: right; 221 } 222 .vjs-default-skin .vjs-mute-control:before, 223 .vjs-default-skin .vjs-volume-menu-button:before { 224 content: "\e006"; 225 } 226 .vjs-default-skin .vjs-mute-control.vjs-vol-0:before, 227 .vjs-default-skin .vjs-volume-menu-button.vjs-vol-0:before { 228 content: "\e003"; 229 } 230 .vjs-default-skin .vjs-mute-control.vjs-vol-1:before, 231 .vjs-default-skin .vjs-volume-menu-button.vjs-vol-1:before { 232 content: "\e004"; 233 } 234 .vjs-default-skin .vjs-mute-control.vjs-vol-2:before, 235 .vjs-default-skin .vjs-volume-menu-button.vjs-vol-2:before { 236 content: "\e005"; 237 } 238 .vjs-default-skin .vjs-volume-control { 239 width: 5em; 240 float: right; 241 } 242 .vjs-default-skin .vjs-volume-bar { 243 width: 5em; 244 height: 0.6em; 245 margin: 1.1em auto 0; 246 } 247 .vjs-default-skin .vjs-volume-menu-button .vjs-menu-content { 248 height: 2.9em; 249 } 250 .vjs-default-skin .vjs-volume-level { 251 position: absolute; 252 top: 0; 253 left: 0; 254 height: 0.5em; 255 /* assuming volume starts at 1.0 */ 256 257 width: 100%; 258 background: #66a8cc url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC) -50% 0 repeat; 259 } 260 .vjs-default-skin .vjs-volume-bar .vjs-volume-handle { 261 width: 0.5em; 262 height: 0.5em; 263 /* Assumes volume starts at 1.0. If you change the size of the 264 handle relative to the volume bar, you'll need to update this value 265 too. */ 266 267 left: 4.5em; 268 } 269 .vjs-default-skin .vjs-volume-handle:before { 270 font-size: 0.9em; 271 top: -0.2em; 272 left: -0.2em; 273 width: 1em; 274 height: 1em; 275 } 276 .vjs-default-skin .vjs-volume-menu-button .vjs-menu .vjs-menu-content { 277 width: 6em; 278 left: -4em; 279 } 280 /* Progress 281 -------------------------------------------------------------------------------- 282 */ 283 .vjs-default-skin .vjs-progress-control { 284 position: absolute; 285 left: 0; 286 right: 0; 287 width: auto; 288 font-size: 0.3em; 289 height: 1em; 290 /* Set above the rest of the controls. */ 291 top: -1em; 292 /* Shrink the bar slower than it grows. */ 293 /* transition */ 294 -webkit-transition: all 0.4s; 295 -moz-transition: all 0.4s; 296 -o-transition: all 0.4s; 297 transition: all 0.4s; 298 } 299 /* On hover, make the progress bar grow to something that's more clickable. 300 This simply changes the overall font for the progress bar, and this 301 updates both the em-based widths and heights, as wells as the icon font */ 302 .vjs-default-skin:hover .vjs-progress-control { 303 font-size: .9em; 304 /* Even though we're not changing the top/height, we need to include them in 305 the transition so they're handled correctly. */ 306 307 /* transition */ 308 -webkit-transition: all 0.2s; 309 -moz-transition: all 0.2s; 310 -o-transition: all 0.2s; 311 transition: all 0.2s; 312 } 313 /* Box containing play and load progresses. Also acts as seek scrubber. */ 314 .vjs-default-skin .vjs-progress-holder { 315 height: 100%; 316 } 317 /* Progress Bars */ 318 .vjs-default-skin .vjs-progress-holder .vjs-play-progress, 319 .vjs-default-skin .vjs-progress-holder .vjs-load-progress, 320 .vjs-default-skin .vjs-progress-holder .vjs-load-progress div { 321 position: absolute; 322 display: block; 323 height: 100%; 324 margin: 0; 325 padding: 0; 326 /* updated by javascript during playback */ 327 328 width: 0; 329 /* Needed for IE6 */ 330 left: 0; 331 top: 0; 332 } 333 .vjs-default-skin .vjs-play-progress { 334 /* 335 Using a data URI to create the white diagonal lines with a transparent 336 background. Surprisingly works in IE8. 337 Created using http://www.patternify.com 338 Changing the first color value will change the bar color. 339 Also using a paralax effect to make the lines move backwards. 340 The -50% left position makes that happen. 341 */ 342 343 background: #66a8cc url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC) -50% 0 repeat; 344 } 345 .vjs-default-skin .vjs-load-progress { 346 background: #646464 /* IE8- Fallback */; 347 background: rgba(255, 255, 255, 0.2); 348 } 349 /* there are child elements of the load progress bar that represent the 350 specific time ranges that have been buffered */ 351 .vjs-default-skin .vjs-load-progress div { 352 background: #787878 /* IE8- Fallback */; 353 background: rgba(255, 255, 255, 0.1); 354 } 355 .vjs-default-skin .vjs-seek-handle { 356 width: 1.5em; 357 height: 100%; 358 } 359 .vjs-default-skin .vjs-seek-handle:before { 360 padding-top: 0.1em /* Minor adjustment */; 361 } 362 /* Live Mode 363 -------------------------------------------------------------------------------- 364 */ 365 .vjs-default-skin.vjs-live .vjs-time-controls, 366 .vjs-default-skin.vjs-live .vjs-time-divider, 367 .vjs-default-skin.vjs-live .vjs-progress-control { 368 display: none; 369 } 370 .vjs-default-skin.vjs-live .vjs-live-display { 371 display: block; 372 } 373 /* Live Display 374 -------------------------------------------------------------------------------- 375 */ 376 .vjs-default-skin .vjs-live-display { 377 display: none; 378 font-size: 1em; 379 line-height: 3em; 380 } 381 /* Time Display 382 -------------------------------------------------------------------------------- 383 */ 384 .vjs-default-skin .vjs-time-controls { 385 font-size: 1em; 386 /* Align vertically by making the line height the same as the control bar */ 387 line-height: 3em; 388 } 389 .vjs-default-skin .vjs-current-time { 390 float: left; 391 } 392 .vjs-default-skin .vjs-duration { 393 float: left; 394 } 395 /* Remaining time is in the HTML, but not included in default design */ 396 .vjs-default-skin .vjs-remaining-time { 397 display: none; 398 float: left; 399 } 400 .vjs-time-divider { 401 float: left; 402 line-height: 3em; 403 } 404 /* Fullscreen 405 -------------------------------------------------------------------------------- 406 */ 407 .vjs-default-skin .vjs-fullscreen-control { 408 width: 3.8em; 409 cursor: pointer; 410 float: right; 411 } 412 .vjs-default-skin .vjs-fullscreen-control:before { 413 content: "\e000"; 414 } 415 /* Switch to the exit icon when the player is in fullscreen */ 416 .vjs-default-skin.vjs-fullscreen .vjs-fullscreen-control:before { 417 content: "\e00b"; 418 } 419 /* Big Play Button (play button at start) 420 -------------------------------------------------------------------------------- 421 Positioning of the play button in the center or other corners can be done more 422 easily in the skin designer. http://designer.videojs.com/ 423 */ 424 .vjs-default-skin .vjs-big-play-button { 425 left: 0.5em; 426 top: 0.5em; 427 font-size: 3em; 428 display: block; 429 z-index: 2; 430 position: absolute; 431 width: 4em; 432 height: 2.6em; 433 text-align: center; 434 vertical-align: middle; 435 cursor: pointer; 436 opacity: 1; 437 /* Need a slightly gray bg so it can be seen on black backgrounds */ 438 /* background-color-with-alpha */ 439 background-color: #07141e; 440 background-color: rgba(7, 20, 30, 0.7); 441 border: 0.1em solid #3b4249; 442 /* border-radius */ 443 -webkit-border-radius: 0.8em; 444 -moz-border-radius: 0.8em; 445 border-radius: 0.8em; 446 /* box-shadow */ 447 -webkit-box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25); 448 -moz-box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25); 449 box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25); 450 /* transition */ 451 -webkit-transition: all 0.4s; 452 -moz-transition: all 0.4s; 453 -o-transition: all 0.4s; 454 transition: all 0.4s; 455 } 456 /* Optionally center */ 457 .vjs-default-skin.vjs-big-play-centered .vjs-big-play-button { 458 /* Center it horizontally */ 459 left: 50%; 460 margin-left: -2.1em; 461 /* Center it vertically */ 462 top: 50%; 463 margin-top: -1.4000000000000001em; 464 } 465 /* Hide if controls are disabled */ 466 .vjs-default-skin.vjs-controls-disabled .vjs-big-play-button { 467 display: none; 468 } 469 /* Hide when video starts playing */ 470 .vjs-default-skin.vjs-has-started .vjs-big-play-button { 471 display: none; 472 } 473 /* Hide on mobile devices. Remove when we stop using native controls 474 by default on mobile */ 475 .vjs-default-skin.vjs-using-native-controls .vjs-big-play-button { 476 display: none; 477 } 478 .vjs-default-skin:hover .vjs-big-play-button, 479 .vjs-default-skin .vjs-big-play-button:focus { 480 outline: 0; 481 border-color: #fff; 482 /* IE8 needs a non-glow hover state */ 483 background-color: #505050; 484 background-color: rgba(50, 50, 50, 0.75); 485 /* box-shadow */ 486 -webkit-box-shadow: 0 0 3em #ffffff; 487 -moz-box-shadow: 0 0 3em #ffffff; 488 box-shadow: 0 0 3em #ffffff; 489 /* transition */ 490 -webkit-transition: all 0s; 491 -moz-transition: all 0s; 492 -o-transition: all 0s; 493 transition: all 0s; 494 } 495 .vjs-default-skin .vjs-big-play-button:before { 496 content: "\e001"; 497 font-family: VideoJS; 498 /* In order to center the play icon vertically we need to set the line height 499 to the same as the button height */ 500 501 line-height: 2.6em; 502 text-shadow: 0.05em 0.05em 0.1em #000; 503 text-align: center /* Needed for IE8 */; 504 position: absolute; 505 left: 0; 506 width: 100%; 507 height: 100%; 508 } 509 .vjs-error .vjs-big-play-button { 510 display: none; 511 } 512 /* Error Display 513 -------------------------------------------------------------------------------- 514 */ 515 .vjs-error-display { 516 display: none; 517 } 518 .vjs-error .vjs-error-display { 519 display: block; 520 position: absolute; 521 left: 0; 522 top: 0; 523 width: 100%; 524 height: 100%; 525 } 526 .vjs-error .vjs-error-display:before { 527 content: 'X'; 528 font-family: Arial; 529 font-size: 4em; 530 color: #666666; 531 /* In order to center the play icon vertically we need to set the line height 532 to the same as the button height */ 533 534 line-height: 1; 535 text-shadow: 0.05em 0.05em 0.1em #000; 536 text-align: center /* Needed for IE8 */; 537 vertical-align: middle; 538 position: absolute; 539 left: 0; 540 top: 50%; 541 margin-top: -0.5em; 542 width: 100%; 543 } 544 .vjs-error-display div { 545 position: absolute; 546 bottom: 1em; 547 right: 0; 548 left: 0; 549 font-size: 1.4em; 550 text-align: center; 551 padding: 3px; 552 background: #000000; 553 background: rgba(0, 0, 0, 0.5); 554 } 555 .vjs-error-display a, 556 .vjs-error-display a:visited { 557 color: #F4A460; 558 } 559 /* Loading Spinner 560 -------------------------------------------------------------------------------- 561 */ 562 .vjs-loading-spinner { 563 /* Should be hidden by default */ 564 display: none; 565 position: absolute; 566 top: 50%; 567 left: 50%; 568 font-size: 4em; 569 line-height: 1; 570 width: 1em; 571 height: 1em; 572 margin-left: -0.5em; 573 margin-top: -0.5em; 574 opacity: 0.75; 575 } 576 /* Show the spinner when waiting for data and seeking to a new time */ 577 .vjs-waiting .vjs-loading-spinner, 578 .vjs-seeking .vjs-loading-spinner { 579 display: block; 580 /* only animate when showing because it can be processor heavy */ 581 /* animation */ 582 -webkit-animation: spin 1.5s infinite linear; 583 -moz-animation: spin 1.5s infinite linear; 584 -o-animation: spin 1.5s infinite linear; 585 animation: spin 1.5s infinite linear; 586 } 587 /* Errors are unrecoverable without user interaction so hide the spinner */ 588 .vjs-error .vjs-loading-spinner { 589 display: none; 590 /* ensure animation doesn't continue while hidden */ 591 /* animation */ 592 -webkit-animation: none; 593 -moz-animation: none; 594 -o-animation: none; 595 animation: none; 596 } 597 .vjs-default-skin .vjs-loading-spinner:before { 598 content: "\e01e"; 599 font-family: VideoJS; 600 position: absolute; 601 top: 0; 602 left: 0; 603 width: 1em; 604 height: 1em; 605 text-align: center; 606 text-shadow: 0em 0em 0.1em #000; 607 } 608 @-moz-keyframes spin { 609 0% { 610 -moz-transform: rotate(0deg); 611 } 612 100% { 613 -moz-transform: rotate(359deg); 614 } 615 } 616 @-webkit-keyframes spin { 617 0% { 618 -webkit-transform: rotate(0deg); 619 } 620 100% { 621 -webkit-transform: rotate(359deg); 622 } 623 } 624 @-o-keyframes spin { 625 0% { 626 -o-transform: rotate(0deg); 627 } 628 100% { 629 -o-transform: rotate(359deg); 630 } 631 } 632 @keyframes spin { 633 0% { 634 transform: rotate(0deg); 635 } 636 100% { 637 transform: rotate(359deg); 638 } 639 } 640 /* Menu Buttons (Captions/Subtitles/etc.) 641 -------------------------------------------------------------------------------- 642 */ 643 .vjs-default-skin .vjs-menu-button { 644 float: right; 645 cursor: pointer; 646 } 647 .vjs-default-skin .vjs-menu { 648 display: none; 649 position: absolute; 650 bottom: 0; 651 left: 0em; 652 /* (Width of vjs-menu - width of button) / 2 */ 653 654 width: 0em; 655 height: 0em; 656 margin-bottom: 3em; 657 border-left: 2em solid transparent; 658 border-right: 2em solid transparent; 659 border-top: 1.55em solid #000000; 660 /* Same width top as ul bottom */ 661 662 border-top-color: rgba(7, 40, 50, 0.5); 663 /* Same as ul background */ 664 665 } 666 /* Button Pop-up Menu */ 667 .vjs-default-skin .vjs-menu-button .vjs-menu .vjs-menu-content { 668 display: block; 669 padding: 0; 670 margin: 0; 671 position: absolute; 672 width: 10em; 673 bottom: 1.5em; 674 /* Same bottom as vjs-menu border-top */ 675 676 max-height: 15em; 677 overflow: auto; 678 left: -5em; 679 /* Width of menu - width of button / 2 */ 680 681 /* background-color-with-alpha */ 682 background-color: #07141e; 683 background-color: rgba(7, 20, 30, 0.7); 684 /* box-shadow */ 685 -webkit-box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2); 686 -moz-box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2); 687 box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2); 688 } 689 .vjs-default-skin .vjs-menu-button:hover .vjs-menu { 690 display: block; 691 } 692 .vjs-default-skin .vjs-menu-button ul li { 693 list-style: none; 694 margin: 0; 695 padding: 0.3em 0 0.3em 0; 696 line-height: 1.4em; 697 font-size: 1.2em; 698 text-align: center; 699 text-transform: lowercase; 700 } 701 .vjs-default-skin .vjs-menu-button ul li.vjs-selected { 702 background-color: #000; 703 } 704 .vjs-default-skin .vjs-menu-button ul li:focus, 705 .vjs-default-skin .vjs-menu-button ul li:hover, 706 .vjs-default-skin .vjs-menu-button ul li.vjs-selected:focus, 707 .vjs-default-skin .vjs-menu-button ul li.vjs-selected:hover { 708 outline: 0; 709 color: #111; 710 /* background-color-with-alpha */ 711 background-color: #ffffff; 712 background-color: rgba(255, 255, 255, 0.75); 713 /* box-shadow */ 714 -webkit-box-shadow: 0 0 1em #ffffff; 715 -moz-box-shadow: 0 0 1em #ffffff; 716 box-shadow: 0 0 1em #ffffff; 717 } 718 .vjs-default-skin .vjs-menu-button ul li.vjs-menu-title { 719 text-align: center; 720 text-transform: uppercase; 721 font-size: 1em; 722 line-height: 2em; 723 padding: 0; 724 margin: 0 0 0.3em 0; 725 font-weight: bold; 726 cursor: default; 727 } 728 /* Subtitles Button */ 729 .vjs-default-skin .vjs-subtitles-button:before { 730 content: "\e00c"; 731 } 732 /* Captions Button */ 733 .vjs-default-skin .vjs-captions-button:before { 734 content: "\e008"; 735 } 736 /* Chapters Button */ 737 .vjs-default-skin .vjs-chapters-button:before { 738 content: "\e00c"; 739 } 740 .vjs-default-skin .vjs-chapters-button.vjs-menu-button .vjs-menu .vjs-menu-content { 741 width: 24em; 742 left: -12em; 743 } 744 /* Replacement for focus outline */ 745 .vjs-default-skin .vjs-captions-button:focus .vjs-control-content:before, 746 .vjs-default-skin .vjs-captions-button:hover .vjs-control-content:before { 747 /* box-shadow */ 748 -webkit-box-shadow: 0 0 1em #ffffff; 749 -moz-box-shadow: 0 0 1em #ffffff; 750 box-shadow: 0 0 1em #ffffff; 751 } 752 /* 753 REQUIRED STYLES (be careful overriding) 754 ================================================================================ 755 When loading the player, the video tag is replaced with a DIV, 756 that will hold the video tag or object tag for other playback methods. 757 The div contains the video playback element (Flash or HTML5) and controls, 758 and sets the width and height of the video. 759 760 ** If you want to add some kind of border/padding (e.g. a frame), or special 761 positioning, use another containing element. Otherwise you risk messing up 762 control positioning and full window mode. ** 763 */ 764 .video-js { 765 background-color: #000; 766 position: relative; 767 padding: 0; 768 /* Start with 10px for base font size so other dimensions can be em based and 769 easily calculable. */ 770 771 font-size: 10px; 772 /* Allow poster to be vertially aligned. */ 773 774 vertical-align: middle; 775 /* display: table-cell; */ 776 /*This works in Safari but not Firefox.*/ 777 778 /* Provide some basic defaults for fonts */ 779 780 font-weight: normal; 781 font-style: normal; 782 /* Avoiding helvetica: issue #376 */ 783 784 font-family: Arial, sans-serif; 785 /* Turn off user selection (text highlighting) by default. 786 The majority of player components will not be text blocks. 787 Text areas will need to turn user selection back on. */ 788 789 /* user-select */ 790 -webkit-user-select: none; 791 -moz-user-select: none; 792 -ms-user-select: none; 793 user-select: none; 794 } 795 /* Playback technology elements expand to the width/height of the containing div 796 <video> or <object> */ 797 .video-js .vjs-tech { 798 position: absolute; 799 top: 0; 800 left: 0; 801 width: 100%; 802 height: 100%; 803 } 804 /* Fix for Firefox 9 fullscreen (only if it is enabled). Not needed when 805 checking fullScreenEnabled. */ 806 .video-js:-moz-full-screen { 807 position: absolute; 808 } 809 /* Fullscreen Styles */ 810 body.vjs-full-window { 811 padding: 0; 812 margin: 0; 813 height: 100%; 814 /* Fix for IE6 full-window. http://www.cssplay.co.uk/layouts/fixed.html */ 815 overflow-y: auto; 816 } 817 .video-js.vjs-fullscreen { 818 position: fixed; 819 overflow: hidden; 820 z-index: 1000; 821 left: 0; 822 top: 0; 823 bottom: 0; 824 right: 0; 825 width: 100% !important; 826 height: 100% !important; 827 /* IE6 full-window (underscore hack) */ 828 _position: absolute; 829 } 830 .video-js:-webkit-full-screen { 831 width: 100% !important; 832 height: 100% !important; 833 } 834 .video-js.vjs-fullscreen.vjs-user-inactive { 835 cursor: none; 836 } 837 /* Poster Styles */ 838 .vjs-poster { 839 background-repeat: no-repeat; 840 background-position: 50% 50%; 841 background-size: contain; 842 cursor: pointer; 843 margin: 0; 844 padding: 0; 845 position: absolute; 846 top: 0; 847 right: 0; 848 bottom: 0; 849 left: 0; 850 } 851 .vjs-poster img { 852 display: block; 853 margin: 0 auto; 854 max-height: 100%; 855 padding: 0; 856 width: 100%; 857 } 858 /* Hide the poster when native controls are used otherwise it covers them */ 859 .video-js.vjs-using-native-controls .vjs-poster { 860 display: none; 861 } 862 /* Text Track Styles */ 863 /* Overall track holder for both captions and subtitles */ 864 .video-js .vjs-text-track-display { 865 text-align: center; 866 position: absolute; 867 bottom: 4em; 868 /* Leave padding on left and right */ 869 left: 1em; 870 right: 1em; 871 } 872 /* Move captions down when controls aren't being shown */ 873 .video-js.vjs-user-inactive.vjs-playing .vjs-text-track-display { 874 bottom: 1em; 875 } 876 /* Individual tracks */ 877 .video-js .vjs-text-track { 878 display: none; 879 font-size: 1.4em; 880 text-align: center; 881 margin-bottom: 0.1em; 882 /* Transparent black background, or fallback to all black (oldIE) */ 883 /* background-color-with-alpha */ 884 background-color: #000000; 885 background-color: rgba(0, 0, 0, 0.5); 886 } 887 .video-js .vjs-subtitles { 888 color: #ffffff /* Subtitles are white */; 889 } 890 .video-js .vjs-captions { 891 color: #ffcc66 /* Captions are yellow */; 892 } 893 .vjs-tt-cue { 894 display: block; 895 } 896 /* Hide disabled or unsupported controls */ 897 .vjs-default-skin .vjs-hidden { 898 display: none; 899 } 900 .vjs-lock-showing { 901 display: block !important; 902 opacity: 1; 903 visibility: visible; 904 } 905 /* In IE8 w/ no JavaScript (no HTML5 shim), the video tag doesn't register. 906 The .video-js classname on the video tag also isn't considered. 907 This optional paragraph inside the video tag can provide a message to users 908 about what's required to play video. */ 909 .vjs-no-js { 910 padding: 20px; 911 color: #ccc; 912 background-color: #333; 913 font-size: 18px; 914 font-family: Arial, sans-serif; 915 text-align: center; 916 width: 300px; 917 height: 150px; 918 margin: 0px auto; 919 } 920 .vjs-no-js a, 921 .vjs-no-js a:visited { 922 color: #F4A460; 923 } 924 /* ----------------------------------------------------------------------------- 925 The original source of this file lives at 926 https://github.com/videojs/video.js/blob/master/src/css/video-js.less */