Warning, /webapps/ocs-webserver/httpdocs/theme/flatui/less/modules/video.less is written in an unsupported language. File is not indexed.

0001 //
0002 // Video Player
0003 // --------------------------------------------------
0004 
0005 // Module color variable
0006 @controls-color: mix(@base, black, 75%);
0007 
0008 .video-js {
0009   background-color: transparent;  
0010   // Otherwise you won't see controls in Fullscreen mode
0011   margin-top: -95px;
0012   position: relative;
0013   padding: 0;
0014   font-size: 10px;
0015   vertical-align: middle;
0016   .border-radius(6px 6px 0 0);
0017   -webkit-backface-visibility: hidden;
0018   -moz-backface-visibility:hidden;
0019   -ms-backface-visibility:hidden;
0020   backface-visibility:hidden;
0021   
0022   .vjs-tech {
0023     position: absolute;
0024     top: 0;
0025     left: 0;
0026     width: 100%;
0027     height: 100%;
0028     .border-radius(6px 6px 0 0);
0029   }  
0030   &:-moz-full-screen {
0031     position: absolute;
0032   }  
0033 }
0034 
0035 body.vjs-full-window {
0036   padding: 0;
0037   margin: 0;
0038   height: 100%;
0039   overflow-y: auto;
0040 }
0041 
0042 .video-js {
0043   &.vjs-fullscreen {
0044     position: fixed;
0045     overflow: hidden;
0046     z-index: 1000;
0047     left: 0;
0048     top: 0;
0049     bottom: 0;
0050     right: 0;
0051     width: 100% !important;
0052     height: 100% !important;
0053     _position: absolute;
0054   }  
0055   &:-webkit-full-screen {
0056     width: 100% !important;
0057     height: 100% !important;
0058   }  
0059 }
0060 
0061 .vjs-poster {
0062   margin: 0 auto;
0063   padding: 0;
0064   cursor: pointer;
0065   position: relative;
0066   width: 100%;
0067   max-height: 100%;
0068   .border-radius(6px 6px 0 0);
0069 }
0070 
0071 .video-js {
0072   .vjs-text-track-display {
0073     text-align: center;
0074     position: absolute;
0075     bottom: 4em;
0076     left: 1em;
0077     right: 1em;
0078     font-family: @base-font-family;
0079   }  
0080   .vjs-text-track {
0081     display: none;
0082     color: @inverse;
0083     font-size: 1.4em;
0084     text-align: center;
0085     margin-bottom: .1em;
0086     background: #000;
0087     background: rgba(0,0,0,.5);
0088   }  
0089   .vjs-subtitles {
0090     color: #fff;
0091   }  
0092   .vjs-captions {
0093     color: #fc6;
0094   }  
0095 }
0096 
0097 .vjs-tt-cue {
0098   display: block;
0099 }
0100 
0101 .vjs-fade-in {
0102   visibility: visible !important;
0103   opacity: 1 !important;
0104   .transition(~"visibility 0s linear 0s, opacity .3s linear");
0105 }
0106 .vjs-fade-out {
0107   visibility: hidden !important;
0108   opacity: 0 !important;
0109   .transition(~"visibility 0s linear 1.5s, opacity 1.5s linear");
0110 }
0111 
0112 .vjs-controls {  
0113   position: absolute;
0114   bottom: -47px;
0115   left: 0;
0116   right: 0;
0117   margin: 0;
0118   padding: 0;
0119   height: 47px;
0120   color: @inverse;
0121   background: @controls-color;
0122   .border-radius(0 0 6px 6px);
0123   
0124   &.vjs-fade-out {
0125     visibility: visible !important;
0126     opacity: 1 !important;
0127   }  
0128 }
0129 
0130 // Video player control general style
0131 .vjs-control {
0132   background-position: center center;
0133   background-repeat: no-repeat;
0134   position: relative;
0135   float: left;
0136   text-align: center;
0137   margin: 0;
0138   padding: 0;
0139   height: 18px;
0140   width: 18px;
0141   
0142   &:focus {
0143     outline: 0
0144   }  
0145   div {
0146     background-position: center center;
0147     background-repeat: no-repeat;
0148   }    
0149 }
0150 
0151 // Control tooltip
0152 .vjs-control-text {
0153   border: 0;
0154   clip: rect(0 0 0 0);
0155   height: 1px;
0156   margin: -1px;
0157   overflow: hidden;
0158   padding: 0;
0159   position: absolute;
0160   width: 1px;
0161 }
0162 
0163 .vjs-play-control {
0164   cursor: pointer !important;
0165   height: 47px;
0166   left: 0;
0167   position: absolute;
0168   top: 0;
0169   width: 58px;
0170   
0171   div {
0172     position: relative;    
0173     height: 47px;
0174     
0175     &:before,
0176     &:after {
0177       position: absolute;
0178       font-family: "Flat-UI-Icons";
0179       color: @firm;
0180       font-size: 16px;
0181       top: 50%;
0182       left: 50%;
0183       margin: -0.55em 0 0 -0.5em;
0184       .transition(~"color .25s, opacity .25s");
0185     }
0186     &:after {
0187       content: "\e03b";
0188     }
0189     &:before {
0190       content: "\e03c";
0191     }
0192   }
0193 }
0194 
0195 .vjs-paused .vjs-play-control {  
0196   &:hover {
0197     div:before {
0198       color: mix(@firm, black, 85%);
0199     } 
0200   }  
0201   div {
0202     &:after {
0203       .opacity(0);
0204     }
0205     &:before {
0206       .opacity(100);
0207     }
0208   }  
0209 }
0210 
0211 .vjs-playing .vjs-play-control {  
0212   &:hover {
0213     div:after {
0214       color: mix(@firm, black, 85%);
0215     } 
0216   }  
0217   div {
0218     &:after {
0219       .opacity(100);
0220     }
0221     &:before {
0222       .opacity(0);
0223     }    
0224   }  
0225 }
0226 
0227 .vjs-rewind-control {
0228   width: 5em;
0229   cursor: pointer !important;
0230   
0231   div {
0232     width: 19px;
0233     height: 16px;
0234     background: none transparent;
0235     margin: .5em auto 0;
0236   }  
0237 }
0238 
0239 .vjs-mute-control {
0240   background: url(../img/video/volume-full.png) center -48px no-repeat;
0241   background-size: 16px 64px;
0242   cursor: pointer !important;
0243   position: absolute;
0244   right: 51px;
0245   top: 14px;
0246 
0247   &:hover,
0248   &:focus {
0249     div {
0250       opacity: 0;
0251     }  
0252   }
0253   
0254   // Muted state
0255   &.vjs-vol-0 {
0256     &,
0257     div {
0258       background-image: url(../img/video/volume-off.png);
0259     }  
0260   }
0261   div {
0262     background: @controls-color url(../img/video/volume-full.png) no-repeat center 2px;
0263     background-size: 16px 64px;
0264     height: 18px;
0265     .transition(opacity .25s);
0266   }  
0267 }
0268 
0269 .vjs-volume-control,
0270 .vjs-volume-level,
0271 .vjs-volume-handle,
0272 .vjs-volume-bar {
0273   display: none;
0274 }
0275 
0276 .vjs-progress-control {
0277   position: absolute;
0278   left: 60px;
0279   right: 180px;
0280   height: 12px;
0281   width: auto;
0282   top: 18px;
0283   background: mix(@base, @inverse, 93%);
0284   .border-radius(32px);
0285 }
0286 
0287 .vjs-progress-holder {
0288   position: relative;
0289   cursor: pointer !important;
0290   padding: 0;
0291   margin: 0;
0292   height: 12px;
0293 }
0294 
0295 .vjs-play-progress,
0296 .vjs-load-progress {
0297   position: absolute;
0298   display: block;
0299   height: 12px;
0300   margin: 0;
0301   padding: 0;
0302   left: 0;
0303   top: 0;
0304   .border-radius(32px);
0305 }
0306 
0307 .vjs-play-progress {
0308   background: @firm;
0309   left: -1px;
0310 }
0311 
0312 .vjs-load-progress {
0313   background: mix(@base, @inverse, 20%);
0314   .border-radius(32px 0 0 32px);
0315   
0316   &[style*='100%'],
0317   &[style*='99%'] {
0318     .border-radius(32px);
0319   }  
0320 }
0321 
0322 .vjs-seek-handle {
0323   background-color: mix(@firm, black, 85%);
0324   position: absolute;
0325   width: 18px;
0326   height: 18px;
0327   margin: -3px 0 0 1px;
0328   left: 0;
0329   top: 0;
0330   .transition(background-color .25s);
0331   .border-radius(50%);
0332 
0333   &[style*='95.'] {
0334     margin-left: 3px;
0335   }
0336   &[style='left: 0%;'] {
0337     margin-left: -2px;
0338   }
0339   &:hover,
0340   &:focus {
0341     background-color: mix(@firm, black, 75%);
0342   }  
0343   &:active {
0344     background-color: mix(@firm, black, 65%)
0345   }  
0346 }
0347 
0348 // Player time controls
0349 .vjs-time-controls {
0350   position: absolute;
0351   height: 20px;
0352   width: 50px;
0353   top: 16px;
0354   font: 300 13px @base-font-family;
0355 }
0356 
0357 .vjs-current-time {
0358   right: 128px;
0359   text-align: right;
0360 }
0361 
0362 .vjs-duration {
0363   color: mix(@base, @inverse, 80%);
0364   right: 69px;
0365   text-align: left;
0366 }
0367 
0368 .vjs-remaining-time {
0369   display: none;
0370 }
0371 
0372 .vjs-time-divider {
0373   color: mix(@base, @inverse, 80%);
0374   font-size: 14px;
0375   position: absolute;
0376   right: 121px;
0377   top: 15px;
0378 }
0379 
0380 .vjs-secondary-controls {
0381   float: right;
0382 }
0383 
0384 .vjs-fullscreen-control {
0385   background-image: url(../img/video/fullscreen.png);
0386   background-position: center -47px;
0387   background-size: 15px 64px;
0388   cursor: pointer !important;
0389   position: absolute;
0390   right: 17px;
0391   top: 13px;
0392 
0393   &:hover,
0394   &:focus {
0395     div {
0396       opacity: 0;
0397     }  
0398   }
0399   div {
0400     height: 18px;
0401     background: url(../img/video/fullscreen.png) no-repeat center 2px;
0402     background-size: 15px 64px;
0403     .transition(opacity .25s);
0404   }  
0405 }
0406 
0407 // Subtitles menu. Hide for no need by design.
0408 .vjs-menu-button {
0409   display: none !important;
0410 }
0411 
0412 // Video preloader
0413 .sharp-keyframes() {
0414   0% {
0415     background: #e74c3c;    
0416     .transform(rotate(0deg));
0417     .border-radius(10px);
0418   }
0419   50% {
0420     background: #ebedee;
0421     .border-radius(0);
0422     .transform(rotate(180deg));
0423   }
0424   100% {
0425     background: #e74c3c;
0426     .border-radius(10px);
0427     .transform(rotate(360deg));
0428   }  
0429 }    
0430 
0431 @-webkit-keyframes sharp {
0432   .sharp-keyframes();
0433 }
0434 
0435 @-moz-keyframes sharp {
0436   .sharp-keyframes();
0437 }
0438 
0439 @-o-keyframes sharp {
0440   .sharp-keyframes();
0441 }
0442 
0443 @keyframes sharp {
0444   .sharp-keyframes();
0445 }
0446 
0447 .vjs-loading-spinner {
0448   background: #ebedee;
0449   display: none;
0450   height: 16px;
0451   left: 50%;
0452   margin: -8px 0 0 -8px;
0453   position: absolute;
0454   top: 50%;
0455   width: 16px;
0456   .animation(sharp 2s ease infinite);
0457   .border-radius(10px);
0458 }