diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e43b0f9 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.DS_Store diff --git a/video/assets/.DS_Store b/video/assets/.DS_Store new file mode 100644 index 0000000..5008ddf Binary files /dev/null and b/video/assets/.DS_Store differ diff --git a/video/assets/v06-07_ld.mp4 b/video/assets/v06-07_ld.mp4 new file mode 100644 index 0000000..d1f06c8 Binary files /dev/null and b/video/assets/v06-07_ld.mp4 differ diff --git a/video/css/.DS_Store b/video/css/.DS_Store new file mode 100644 index 0000000..5008ddf Binary files /dev/null and b/video/css/.DS_Store differ diff --git a/video/css/style.css b/video/css/style.css new file mode 100755 index 0000000..ac076d0 --- /dev/null +++ b/video/css/style.css @@ -0,0 +1,371 @@ +/* + * HTML5 Boilerplate + * + * What follows is the result of much research on cross-browser styling. + * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal, + * Kroc Camen, and the H5BP dev community and team. + */ + + +/* ============================================================================= + HTML5 element display + ========================================================================== */ + +article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; } +audio[controls], canvas, video { display: inline-block; *display: inline; *zoom: 1; } + + +/* ============================================================================= + Base + ========================================================================== */ + +/* + * 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units + * http://clagnut.com/blog/348/#c790 + * 2. Force vertical scrollbar in non-IE + * 3. Remove Android and iOS tap highlight color to prevent entire container being highlighted + * www.yuiblog.com/blog/2010/10/01/quick-tip-customizing-the-mobile-safari-tap-highlight-color/ + * 4. Prevent iOS text size adjust on device orientation change, without disabling user zoom + * www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ + */ + +html { font-size: 100%; overflow-y: scroll; -webkit-overflow-scrolling: touch; -webkit-tap-highlight-color: rgba(0,0,0,0); -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; } + +body { margin: 0; font-size: 13px; line-height: 1.231; } + +body, button, input, select, textarea { font-family: sans-serif; color: #222; } + +/* + * These selection declarations have to be separate + * No text-shadow: twitter.com/miketaylr/status/12228805301 + * Also: hot pink! + */ + +::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; } +::selection { background: #fe57a1; color: #fff; text-shadow: none; } + + +/* ============================================================================= + Links + ========================================================================== */ + +a { color: #00e; } +a:visited { color: #551a8b; } +a:focus { outline: thin dotted; } + +/* Improve readability when focused and hovered in all browsers: people.opera.com/patrickl/experiments/keyboard/test */ +a:hover, a:active { outline: 0; } + + +/* ============================================================================= + Typography + ========================================================================== */ + +abbr[title] { border-bottom: 1px dotted; } + +b, strong { font-weight: bold; } + +blockquote { margin: 1em 40px; } + +dfn { font-style: italic; } + +hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; } + +ins { background: #ff9; color: #000; text-decoration: none; } + +mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; } + +/* Redeclare monospace font family: en.wikipedia.org/wiki/User:Davidgothberg/Test59 */ +pre, code, kbd, samp { font-family: monospace, monospace; _font-family: 'courier new', monospace; font-size: 1em; } + +/* Improve readability of pre-formatted text in all browsers */ +pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; } + +q { quotes: none; } +q:before, q:after { content: ""; content: none; } + +small { font-size: 85%; } + +/* Position subscript and superscript content without affecting line-height: gist.github.com/413930 */ +sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } +sup { top: -0.5em; } +sub { bottom: -0.25em; } + + +/* ============================================================================= + Lists + ========================================================================== */ + +ul, ol { margin: 1em 0; padding: 0 0 0 40px; } +dd { margin: 0 0 0 40px; } +nav ul, nav ol { list-style: none; margin: 0; padding: 0; } + + +/* ============================================================================= + Embedded content + ========================================================================== */ + +/* + * Improve image quality when scaled in IE7 + * code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/ + */ + +img { border: 0; -ms-interpolation-mode: bicubic; } + +/* + * Correct overflow displayed oddly in IE9 + */ + +svg:not(:root) { + overflow: hidden; +} + + +/* ============================================================================= + Figures + ========================================================================== */ + +figure { margin: 0; } + + +/* ============================================================================= + Forms + ========================================================================== */ + +form { margin: 0; } +fieldset { border: 0; margin: 0; padding: 0; } + +/* + * 1. Correct color not inheriting in IE6/7/8/9 + * 2. Correct alignment displayed oddly in IE6/7 + */ + +legend { border: 0; *margin-left: -7px; padding: 0; } + +/* Indicate that 'label' will shift focus to the associated form element */ +label { cursor: pointer; } + +/* + * 1. Correct font-size not inheriting in all browsers + * 2. Remove margins in FF3/4 S5 Chrome + * 3. Define consistent vertical alignment display in all browsers + */ + +button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; } + +/* + * 1. Define line-height as normal to match FF3/4 (set using !important in the UA stylesheet) + * 2. Correct inner spacing displayed oddly in IE6/7 + */ + +button, input { line-height: normal; *overflow: visible; } + +/* + * 1. Display hand cursor for clickable form elements + * 2. Allow styling of clickable form elements in iOS + */ + +button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; } + +/* + * Consistent box sizing and appearance + */ + +input[type="checkbox"], input[type="radio"] { box-sizing: border-box; } +input[type="search"] { -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; } + +/* + * Remove inner padding and border in FF3/4 + * www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ + */ + +button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } + +/* Remove default vertical scrollbar in IE6/7/8/9 */ +textarea { overflow: auto; vertical-align: top; } + +/* Colors for form validity */ +input:valid, textarea:valid { } +/*input:invalid, textarea:invalid { background-color: #f0dddd; }*/ + + +/* ============================================================================= + Tables + ========================================================================== */ + +table { border-collapse: collapse; border-spacing: 0; } + + +/* ============================================================================= + Primary styles + Author: + ========================================================================== */ + + + + + + +/* ================== + Initializr Theme + ================== */ + + +body{ + font-family:Helvetica, Helvetica Neue, Arial, sans-serif; +} + +.wrapper{ + margin:auto; + width:960px; +} + +#header-container{ + background-color:#f16529; + height:130px; + border-bottom:20px solid #e44d26; + margin-bottom:50px; + -webkit-box-shadow:0 40px 40px -40px #AAA; + -moz-box-shadow:0 40px 40px -40px #AAA; + box-shadow:0 40px 40px -40px #AAA; +} + +h2, h3{margin:30px 0;} +h2{font-size: 40px;} +h3{font-size: 30px;} +#title, h2, h3{font-weight:normal;} + +#title{ + font-size: 60px; + color:white; + float:left; +} + +header nav{ + float:right; + margin-top:100px; +} + +header nav ul li{ + display:inline; +} + +nav a{ + padding:20px; + color:white; + text-decoration:none; + background-color:#e44d26; +} + +aside{ + color:white; + padding:20px; + float:right; + height:500px; + width:200px; + background-color:#f16529; + border-bottom:20px solid #e44d26; + margin-bottom:50px; + -webkit-box-shadow:0 0px 40px -10px #AAA; + -moz-box-shadow:0 0px 40px -10px #AAA; + box-shadow:0 0px 40px -10px #AAA; +} + +#main p{ + font:16px/26px Helvetica, Helvetica Neue, Arial; + width:620px; +} + +article header{ + margin-bottom:50px; + padding-bottom:30px; + width:700px; + -webkit-box-shadow:0 45px 60px -60px #AAA; + -moz-box-shadow:0 45px 60px -60px #AAA; + box-shadow:0 45px 60px -60px #AAA; +} + +#footer-container{ + background-color:#f16529; + height:240px; + border-top:20px solid #e44d26; + margin-top:50px; + -webkit-box-shadow:0 -40px 40px -40px #AAA; + -moz-box-shadow:0 -40px 40px -40px #AAA; + box-shadow:0 -40px 40px -40px #AAA; +} + +#footer-container footer{ + color:white; +} + + + + + +/* ============================================================================= + Non-semantic helper classes + Please define your styles before this section. + ========================================================================== */ + +/* For image replacement */ +.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; } +.ir br { display: none; } + +/* Hide for both screenreaders and browsers: + css-discuss.incutio.com/wiki/Screenreader_Visibility */ +.hidden { display: none; visibility: hidden; } + +/* Hide only visually, but have it available for screenreaders: by Jon Neal. + www.webaim.org/techniques/css/invisiblecontent/ & j.mp/visuallyhidden */ +.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; } + +/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: drupal.org/node/897638 */ +.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; } + +/* Hide visually and from screenreaders, but maintain layout */ +.invisible { visibility: hidden; } + +/* Contain floats: nicolasgallagher.com/micro-clearfix-hack/ */ +.clearfix:before, .clearfix:after { content: ""; display: table; } +.clearfix:after { clear: both; } +.clearfix { zoom: 1; } + + + +/* ============================================================================= + PLACEHOLDER Media Queries for Responsive Design. + These override the primary ('mobile first') styles + Modify as content requires. + ========================================================================== */ + +@media only screen and (min-width: 480px) { + /* Style adjustments for viewports 480px and over go here */ + +} + +@media only screen and (min-width: 768px) { + /* Style adjustments for viewports 768px and over go here */ + +} + + +/* ============================================================================= + Print styles. + Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/ + ========================================================================== */ + +@media print { + * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: sanbeiji.com/archives/953 */ + a, a:visited { color: #444 !important; text-decoration: underline; } + a[href]:after { content: " (" attr(href) ")"; } + abbr[title]:after { content: " (" attr(title) ")"; } + .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } /* Don't show links for images, or javascript/internal links */ + pre, blockquote { border: 1px solid #999; page-break-inside: avoid; } + thead { display: table-header-group; } /* css-discuss.incutio.com/wiki/Printing_Tables */ + tr, img { page-break-inside: avoid; } + img { max-width: 100% !important; } + @page { margin: 0.5cm; } + p, h2, h3 { orphans: 3; widows: 3; } + h2, h3{ page-break-after: avoid; } +} diff --git a/video/css/video.css b/video/css/video.css new file mode 100644 index 0000000..29ba0be --- /dev/null +++ b/video/css/video.css @@ -0,0 +1,20 @@ +body{background:#202118;cursor:pointer;} +video{/*opacity:0;-webkit-transition:opacity 5s;*/display:block;margin:0 auto;width:100%;} +/*video.play{opacity:1;} + +#progressBar{width:80%;height:8px;border-radius:4px;border:1px solid #fff;position:absolute;bottom:20px;left:10%;opacity:.6;z-index:6;} +#progressBar span{border-top-left-radius:2px;border-bottom-left-radius:2px;height:6px;background-color:#fff;display:inline-block;position:absolute;top:1px;} + +#progressBar .progress{z-index:7;} +#progressBar .buffer{opacity:.5;} + +#button{position:absolute;top:41%;left:44%;z-index:2;height:200px;width:200px;border:10px solid #fff;border-radius:200px;opacity:.5;text-align:center;background:transparent;transition:opacity .2s ease, -webkit-transform .2s ease;} +#button.off{-webkit-transform:scale(4);opacity:0;} +#button.loading{-webkit-animation: loading 1s infinite linear;} +#button span{display:inline-block;height:100px;width:40px;background:#fff;margin:4em .5em 0 0;} + +@-webkit-keyframes loading { + 0% {-webkit-transform: rotate(0deg);} + 100% {-webkit-transform: rotate(360deg);} +} +*/ \ No newline at end of file diff --git a/video/js/.DS_Store b/video/js/.DS_Store new file mode 100644 index 0000000..5008ddf Binary files /dev/null and b/video/js/.DS_Store differ diff --git a/video/js/video0.js b/video/js/video0.js new file mode 100644 index 0000000..ae8fe9e --- /dev/null +++ b/video/js/video0.js @@ -0,0 +1,53 @@ +'use strict'; + +var video=document.getElementById('video'); +var button=document.getElementById('button'); +var progressBar=document.getElementById('progressBar'); + +video.load(); +button.classList.add('loading'); + +video.addEventListener('canplaythrough',playPause,false); +window.addEventListener('click',playPause,false); +video.addEventListener('ended',playPause,false); +video.addEventListener('timeupdate',playProgress,false); +video.addEventListener('progress',bufferProgress,false); +progressBar.addEventListener('click',setTime,false); + +function playPause (e){ + console.log(e.currentTarget); + if(e.type=="canplaythrough"){ + video.removeEventListener('canplaythrough',playPause,false); + } + button.classList.remove('loading'); + if(video.paused){ + video.play(); + button.classList.add('off'); + }else{ + if(video.ended){ + video.currentTime=0; + video.play(); + } + else{ + video.pause(); + button.classList.remove('off'); + } + } +} + +function playProgress (){ + var progressW=this.currentTime*100/this.duration; + document.querySelector('.progress').style.width=progressW+'%'; +} +function bufferProgress () { + /*var i=this.buffered.length; + console.log(i);*/ + var bufferW=this.buffered.end(0)*100/this.duration; + document.querySelector('.buffer').style.width=bufferW+'%'; +} +function setTime (e) { + console.log(e.currentTarget); + e.stopPropagation(); + //this==e.currentTarget + video.currentTime=e.offsetX*video.duration/this.offsetWidth; +} diff --git a/video/video.html b/video/video.html new file mode 100644 index 0000000..78b576d --- /dev/null +++ b/video/video.html @@ -0,0 +1,36 @@ + + +
+ + + + +