├── .gitignore ├── .htaccess ├── Chunkfive.eot ├── Chunkfive.otf ├── Chunkfive.svg ├── Chunkfive.ttf ├── bg.png ├── book_m.jpg ├── cover.png ├── errata ├── ch01.html ├── ch02.html ├── ch04.html └── ch12.html ├── examples ├── .htaccess ├── ch02 │ ├── figure.html │ └── welcome.jpg ├── ch03 │ ├── form-checkValidate.html │ ├── input-support.html │ ├── novalidate.html │ ├── onforminput.html │ ├── overriding-defaults.html │ ├── pattern.html │ ├── polyfilling.html │ └── validity.html ├── ch04 │ ├── ch4-full-fallback.html │ ├── custom-controls.html │ ├── custom-controls.html- │ ├── figure1.html │ ├── figure3.html │ ├── leverage-a-synergy.mp4 │ ├── leverage-a-synergy.ogv │ ├── video-event-order.html │ └── video-onevent-order.html ├── ch05 │ ├── animate-with-video.html │ ├── animate.html │ ├── animate2.html │ ├── authors.jpg │ ├── bruce-ball.png │ ├── drawimage-split.html │ ├── drawimage.html │ ├── getimagedata.html │ ├── glass-balls.psd │ ├── gradients.html │ ├── hello-world.html │ ├── invert-dropped-images.html │ ├── leverage-a-synergy.mp4 │ ├── leverage-a-synergy.ogv │ ├── path-stickman.html │ ├── pattern-fill-img.html │ ├── pattern-fill.html │ ├── pulsate.html │ ├── radial-gradients.html │ ├── remy-ball.png │ ├── remysharp_avatar.jpg │ ├── rotate.html │ ├── todataurl.html │ ├── tranlate-rotate-scale.html │ └── translate.html ├── ch06 │ └── html5-tweet-time-range.html ├── ch07 │ └── time │ │ ├── fallback-server-time.js │ │ ├── index.html │ │ ├── server-time.js │ │ ├── time.css │ │ ├── time.js │ │ └── time.manifest ├── ch08 │ ├── aria-support.html │ ├── brucel.jpg │ ├── content-types.html │ ├── custom-drag-icon.html │ ├── drag-anything.html │ ├── dropEffect.html │ ├── events.html │ ├── interrogate.html │ ├── rem.jpg │ ├── simple-ie.html │ └── simple.html └── ch10 │ ├── chat-socket.js │ ├── echo.html │ ├── echo.js │ ├── message-recv.html │ ├── message-send.html │ ├── passing-data.html │ ├── passing-data.js │ ├── prime.html │ ├── prime.js │ ├── shared-worker-inner.html │ ├── shared-worker.html │ ├── shared-worker.js │ ├── subworkers.js │ ├── time.html │ ├── web-sockets.js │ └── worker-time.js ├── ih5.css ├── index.html ├── index.php └── links ├── ch01.html ├── ch02.html ├── ch03.html ├── ch04.html ├── ch05.html ├── ch06.html ├── ch07.html ├── ch08.html ├── ch09.html ├── ch10.html └── intro.html /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /.htaccess: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/.htaccess -------------------------------------------------------------------------------- /Chunkfive.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/Chunkfive.eot -------------------------------------------------------------------------------- /Chunkfive.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/Chunkfive.otf -------------------------------------------------------------------------------- /Chunkfive.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/Chunkfive.svg -------------------------------------------------------------------------------- /Chunkfive.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/Chunkfive.ttf -------------------------------------------------------------------------------- /bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/bg.png -------------------------------------------------------------------------------- /book_m.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/book_m.jpg -------------------------------------------------------------------------------- /cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/cover.png -------------------------------------------------------------------------------- /errata/ch01.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/errata/ch01.html -------------------------------------------------------------------------------- /errata/ch02.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/errata/ch02.html -------------------------------------------------------------------------------- /errata/ch04.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/errata/ch04.html -------------------------------------------------------------------------------- /errata/ch12.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/errata/ch12.html -------------------------------------------------------------------------------- /examples/.htaccess: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/.htaccess -------------------------------------------------------------------------------- /examples/ch02/figure.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch02/figure.html -------------------------------------------------------------------------------- /examples/ch02/welcome.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch02/welcome.jpg -------------------------------------------------------------------------------- /examples/ch03/form-checkValidate.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch03/form-checkValidate.html -------------------------------------------------------------------------------- /examples/ch03/input-support.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch03/input-support.html -------------------------------------------------------------------------------- /examples/ch03/novalidate.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch03/novalidate.html -------------------------------------------------------------------------------- /examples/ch03/onforminput.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch03/onforminput.html -------------------------------------------------------------------------------- /examples/ch03/overriding-defaults.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch03/overriding-defaults.html -------------------------------------------------------------------------------- /examples/ch03/pattern.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch03/pattern.html -------------------------------------------------------------------------------- /examples/ch03/polyfilling.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch03/polyfilling.html -------------------------------------------------------------------------------- /examples/ch03/validity.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch03/validity.html -------------------------------------------------------------------------------- /examples/ch04/ch4-full-fallback.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch04/ch4-full-fallback.html -------------------------------------------------------------------------------- /examples/ch04/custom-controls.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch04/custom-controls.html -------------------------------------------------------------------------------- /examples/ch04/custom-controls.html-: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch04/custom-controls.html- -------------------------------------------------------------------------------- /examples/ch04/figure1.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch04/figure1.html -------------------------------------------------------------------------------- /examples/ch04/figure3.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch04/figure3.html -------------------------------------------------------------------------------- /examples/ch04/leverage-a-synergy.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch04/leverage-a-synergy.mp4 -------------------------------------------------------------------------------- /examples/ch04/leverage-a-synergy.ogv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch04/leverage-a-synergy.ogv -------------------------------------------------------------------------------- /examples/ch04/video-event-order.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch04/video-event-order.html -------------------------------------------------------------------------------- /examples/ch04/video-onevent-order.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch04/video-onevent-order.html -------------------------------------------------------------------------------- /examples/ch05/animate-with-video.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/animate-with-video.html -------------------------------------------------------------------------------- /examples/ch05/animate.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/animate.html -------------------------------------------------------------------------------- /examples/ch05/animate2.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/animate2.html -------------------------------------------------------------------------------- /examples/ch05/authors.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/authors.jpg -------------------------------------------------------------------------------- /examples/ch05/bruce-ball.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/bruce-ball.png -------------------------------------------------------------------------------- /examples/ch05/drawimage-split.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/drawimage-split.html -------------------------------------------------------------------------------- /examples/ch05/drawimage.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/drawimage.html -------------------------------------------------------------------------------- /examples/ch05/getimagedata.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/getimagedata.html -------------------------------------------------------------------------------- /examples/ch05/glass-balls.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/glass-balls.psd -------------------------------------------------------------------------------- /examples/ch05/gradients.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/gradients.html -------------------------------------------------------------------------------- /examples/ch05/hello-world.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/hello-world.html -------------------------------------------------------------------------------- /examples/ch05/invert-dropped-images.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/invert-dropped-images.html -------------------------------------------------------------------------------- /examples/ch05/leverage-a-synergy.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/leverage-a-synergy.mp4 -------------------------------------------------------------------------------- /examples/ch05/leverage-a-synergy.ogv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/leverage-a-synergy.ogv -------------------------------------------------------------------------------- /examples/ch05/path-stickman.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/path-stickman.html -------------------------------------------------------------------------------- /examples/ch05/pattern-fill-img.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/pattern-fill-img.html -------------------------------------------------------------------------------- /examples/ch05/pattern-fill.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/pattern-fill.html -------------------------------------------------------------------------------- /examples/ch05/pulsate.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/pulsate.html -------------------------------------------------------------------------------- /examples/ch05/radial-gradients.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/radial-gradients.html -------------------------------------------------------------------------------- /examples/ch05/remy-ball.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/remy-ball.png -------------------------------------------------------------------------------- /examples/ch05/remysharp_avatar.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/remysharp_avatar.jpg -------------------------------------------------------------------------------- /examples/ch05/rotate.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/rotate.html -------------------------------------------------------------------------------- /examples/ch05/todataurl.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/todataurl.html -------------------------------------------------------------------------------- /examples/ch05/tranlate-rotate-scale.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/tranlate-rotate-scale.html -------------------------------------------------------------------------------- /examples/ch05/translate.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch05/translate.html -------------------------------------------------------------------------------- /examples/ch06/html5-tweet-time-range.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch06/html5-tweet-time-range.html -------------------------------------------------------------------------------- /examples/ch07/time/fallback-server-time.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch07/time/fallback-server-time.js -------------------------------------------------------------------------------- /examples/ch07/time/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch07/time/index.html -------------------------------------------------------------------------------- /examples/ch07/time/server-time.js: -------------------------------------------------------------------------------- 1 | var servertime = 1267435767529; -------------------------------------------------------------------------------- /examples/ch07/time/time.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch07/time/time.css -------------------------------------------------------------------------------- /examples/ch07/time/time.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch07/time/time.js -------------------------------------------------------------------------------- /examples/ch07/time/time.manifest: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch07/time/time.manifest -------------------------------------------------------------------------------- /examples/ch08/aria-support.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch08/aria-support.html -------------------------------------------------------------------------------- /examples/ch08/brucel.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch08/brucel.jpg -------------------------------------------------------------------------------- /examples/ch08/content-types.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch08/content-types.html -------------------------------------------------------------------------------- /examples/ch08/custom-drag-icon.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch08/custom-drag-icon.html -------------------------------------------------------------------------------- /examples/ch08/drag-anything.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch08/drag-anything.html -------------------------------------------------------------------------------- /examples/ch08/dropEffect.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch08/dropEffect.html -------------------------------------------------------------------------------- /examples/ch08/events.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch08/events.html -------------------------------------------------------------------------------- /examples/ch08/interrogate.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch08/interrogate.html -------------------------------------------------------------------------------- /examples/ch08/rem.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch08/rem.jpg -------------------------------------------------------------------------------- /examples/ch08/simple-ie.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch08/simple-ie.html -------------------------------------------------------------------------------- /examples/ch08/simple.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch08/simple.html -------------------------------------------------------------------------------- /examples/ch10/chat-socket.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/chat-socket.js -------------------------------------------------------------------------------- /examples/ch10/echo.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/echo.html -------------------------------------------------------------------------------- /examples/ch10/echo.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/echo.js -------------------------------------------------------------------------------- /examples/ch10/message-recv.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/message-recv.html -------------------------------------------------------------------------------- /examples/ch10/message-send.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/message-send.html -------------------------------------------------------------------------------- /examples/ch10/passing-data.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/passing-data.html -------------------------------------------------------------------------------- /examples/ch10/passing-data.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/passing-data.js -------------------------------------------------------------------------------- /examples/ch10/prime.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/prime.html -------------------------------------------------------------------------------- /examples/ch10/prime.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/prime.js -------------------------------------------------------------------------------- /examples/ch10/shared-worker-inner.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/shared-worker-inner.html -------------------------------------------------------------------------------- /examples/ch10/shared-worker.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/shared-worker.html -------------------------------------------------------------------------------- /examples/ch10/shared-worker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/shared-worker.js -------------------------------------------------------------------------------- /examples/ch10/subworkers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/subworkers.js -------------------------------------------------------------------------------- /examples/ch10/time.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/time.html -------------------------------------------------------------------------------- /examples/ch10/web-sockets.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/web-sockets.js -------------------------------------------------------------------------------- /examples/ch10/worker-time.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/examples/ch10/worker-time.js -------------------------------------------------------------------------------- /ih5.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/ih5.css -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/index.html -------------------------------------------------------------------------------- /index.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /links/ch01.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/links/ch01.html -------------------------------------------------------------------------------- /links/ch02.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/links/ch02.html -------------------------------------------------------------------------------- /links/ch03.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/links/ch03.html -------------------------------------------------------------------------------- /links/ch04.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/links/ch04.html -------------------------------------------------------------------------------- /links/ch05.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/links/ch05.html -------------------------------------------------------------------------------- /links/ch06.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/links/ch06.html -------------------------------------------------------------------------------- /links/ch07.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/links/ch07.html -------------------------------------------------------------------------------- /links/ch08.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/links/ch08.html -------------------------------------------------------------------------------- /links/ch09.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/links/ch09.html -------------------------------------------------------------------------------- /links/ch10.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/links/ch10.html -------------------------------------------------------------------------------- /links/intro.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/remy/introducinghtml5/HEAD/links/intro.html --------------------------------------------------------------------------------