Presentation on theme: "HTML 5: Introduction M. Douglas Wray Macwebguru.com."— Presentation transcript:
HTML 5: Introduction M. Douglas Wray Macwebguru.com
M. Douglas Wray Currently webmaster for CUAlum.org Private consultant and trainer Focus: CSS design and WordPress Code geek Loves Cheetos
HTML: A Brief History 1989 – Tim Berners-Lee invents HTML basing it on SGML (good move Tim!) 1992 – NCSA* creates Mosaic browser 1993 – Lynx browser invented 1994 – IETF** sets up HTML work group, HTML 2 spec released, WWW consortium forms 1995 – HTML 3 spec released 1996 – Scripting and standardization added 1997 – HTML 3.2 released and endorsed by W3 *National Center for Supercomputing Applications ** Internet Engineering Task Force More details here: http://www.w3.org/People/Raggett/book4/ch02.htmlhttp://www.w3.org/People/Raggett/book4/ch02.html
HTML: What’s it for? Used to create the basic elements of webpages: text, tables, images, etc. The ‘Etc’ is what’s been growing: Audio Video Graphics
Existing Elements IMG for images APPLET(for Java) OBJECT (generic) A bit limited… Here’s a list of all of them: http://www.w3.org/TR/html4/index/elements.html
What’s Missing? Audio and Video! Vector-based graphics Standardization Dozens of ways currently EMBED is non-standard and awkward:
New HTML5 Markup TagDescription Specifies independent, self-contained content, could be a news-article, blog post, forum post, or other articles which can be distributed independently from the rest of the site. For content aside from the content it is placed in. The aside content should be related to the surrounding content For text that should not be bound to the text-direction of its parent elements A button, or a radiobutton, or a checkbox For describing details about a document, or parts of a document A caption, or summary, inside the details element For grouping a section of stand-alone content, could be a video The caption of the figure section For a footer of a document or section, could include the name of the author, the date of the document, contact information, or copyright information For an introduction of a document or section, could include navigation For a section of headings, using to, where the largest is the main heading of the section, and the others are sub-headings For text that should be highlighted For a measurement, used only if the maximum and minimum values are known For a section of navigation The state of a work in progress For ruby annotation (Chinese notes or characters) For explanation of the ruby annotation What to show browsers that do not support the ruby element For a section in a document. Such as chapters, headers, footers, or any other sections of the document For defining a time or a date, or both Word break. For defining a line-break opportunity.
New Media Elements TagDescription For multimedia content, sounds, music or other audio streams For video content, such as a movie clip or other video streams For media resources for media elements, defined inside video or audio elements For embedded content, such as a plug-in For text tracks used in mediaplayers
New Form Elements TagDescription A list of options for input values Generate keys to authenticate users For different types of output, such as output written by a script
New Input Type Attributes TypeDescription telThe input value is of type telephone number searchThe input field is a search field urlThe input value is a URL emailThe input value is one or more email addresses datetimeThe input value is a date and/or time dateThe input value is a date monthThe input value is a month weekThe input value is a week timeThe input value is of type time datetime-localThe input value is a local date/time numberThe input value is a number rangeThe input value is a number in a given range colorThe input value is a hexadecimal color, like #FF8800 placeholderSpecifies a short hint that describes the expected value of an input field
NAV and FOOTER Currently users are doing this: (user’s nav code) In HTML5 it’s simpler: (user’s nav code) Same for Footer
Video Before HTML5 No standard method Required (different) plugin(s) Various types of video: Ogg/MPEG 4 and WebM Currently-used EMBED methods not valid HTML and cranky
Video Embed Before HMTL5 Different method for embedding each of these: Windows Media (WMV, WMA) Flash (SWF) Flash (FLV) QuickTime (MOV) Real (RM)
Video After HTML5 Your browser does not support the video tag. There’s also a TRACK tag for media players. That’s IT.
Audio in HTML5 Your browser does not support the audio element.
The CANVAS Element Your browser does not support the canvas element. var c=document.getElementById("myCanvas"); var cxt=c.getContext("2d"); cxt.fillStyle="#FF0000"; cxt.fillRect(0,0,150,75); http://www.w3schools.com/html5/tryit.asp?filename=tryhtml5_canvas_first
The CANVAS Element Your browser does not support the canvas element. var c=document.getElementById("myCanvas"); var cxt=c.getContext("2d"); cxt.moveTo(150,150); cxt.lineTo(150,50); cxt.lineTo(10,50); cxt.stroke(); http://www.w3schools.com/html5/tryit.asp?filename=tryhtml5_canvas_line
The CANVAS Element There’s an add-on for Adobe Illustrator so you can save directly into HTML5. http://labs.adobe.com/downloads/illustr ator_html5.html (you can also get it for CS4)
A Few CANVAS Examples My personal logo (link)link Rendered type (link)link Interactive gradients (link)link classList manipulation (link)link HTML5 Form (link)link
More CANVAS examples Adjustable bar chart (link)link Entire HTML5 course/examples (link)link Incredible interactives (link)link Bar charts (link)link Particle System Generator (link)link
Resources The video element (link)link iPhone website (link)link HTML5 Visual Cheatsheet (link)link HTML5 Canvas Cheatsheet (link)link HTML5 & CSS3 Techniques (link)link Hype ™ HTML5 Animation Editor (link)link
More Resources Audio Element Maker (link)link Video Element Maker (link)link SVG to HTML5 Canvas (link)link Purple – HTML5 Canvas Animation (link)link Cut/Paste Examples (link)link
Even More Resources Video examples and browser compatibility (link)link Build an HTML5 video player (link)link Audio and Video Processing (link)link Using Audio with HTML5 (link)link