Html5

52
HTML5

description

 

Transcript of Html5

Page 1: Html5

HTML5

Page 2: Html5

INHALT1. Entstehung2. Generelle Ideen3. Markup & Elemente4. Neue Formularelemente5. Rich Media Einbindung6. Weiterführendes

Page 3: Html5

Entstehung1991 Tim Berners-Lee „HTML Tags“IETF – Internet Engineering Task ForceW3C – World Wide Web Consortium

1999 HTML 4.01XHTML 1.0

Page 4: Html5

EntstehungXHTML 2 – keine AbwärtskompabilitätSchisma im W3CGründung des WHATWGWeb Hypertext Application Technology Working Group

Ian HicksonWeb Forms 2.0 + Web Apps 1.0 = HTML5

2012 Candidate Recommendation

Page 5: Html5

GENERELLE IDEENBestehende Inhalte werden unterstütztFehlerbehandlung für Browser wird definiertSo einfach wie möglich

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<!DOCTYPE html>

Page 6: Html5

MARKUP & ELEMENTEEinfaches Markup<meta http-equiv="content-type"

content="text/html; charset=UTF-8">

<meta charset=UTF-8">

<link rel="stylesheet" type="text/css" href="styles.css">

<link rel="stylesheet" href="styles.css">

<script src="script.js" type="text/javascript"></script>

<script src="script.js"></script>

Page 7: Html5

MARKUP & ELEMENTESchreibweiseHTML 4 und XHTML erlaubt<HTML> <html> <Html>

<br><br />

Page 8: Html5

MARKUP & ELEMENTEObsolete ElementeFramesframe, frameset, noframes

Presentational Elementsfont, big, center, strike, u, tt, s, xmp

Doppelte Elementeacronym, applet, dir

Presentational Attributesbgcolor, cellspacing, valign

Page 9: Html5

MARKUP & ELEMENTE(Sinn-)Geänderte Elemente

small Kleingedrucktesb Hervorhebung ohne extra Wichtigkeit i alternative Bedeutung/Stimmung ohne extra Wichtigkeit cite Titel eines Werkes, nicht der Person

Page 10: Html5

MARKUP & ELEMENTEA Element – Heading, Sections & Grouping

<h1><a href="/cience">cience</a></h1><p><a href="/cience">Wissensring</a></p>

<a href="/cience"> <h1>cience</h1> <p>Wissensring</p></a>

Page 11: Html5

MARKUP & ELEMENTEText-Level Semantik<p>Die <mark>7 Ringe</mark> der Station</p>

<time datetime="17:00">17 Uhr</time><time datetime="2010-08-13">13. August

2010</time><time datetime="2010-08-13T17:00">17 Uhr am

13. August 2010</time>

Attribut: pubdate = Veröffentlichungsdatum

Page 12: Html5

MARKUP & ELEMENTEText-Level Semantik

<meter>23 of 70</meter>

<meter low="-10" high=„30" min="-40" max="50" optimum="25" value="19">Sommer in Berlin

</meter>

Page 13: Html5

MARKUP & ELEMENTEText-Level Semantik

Die Profil ist zu <progress>60%</progress> Vollständig.

<progress min="10" max="100" value="60">

Page 14: Html5

MARKUP & ELEMENTEText-Level Semantik<details open>

Details zum Dokument oder Teilen davon</details>

<summary>

Headerelement des Detail-Elements</summary>

Page 15: Html5

MARKUP & ELEMENTEText-Level Semantik<ruby>

Chinesische Anmerkung / Aussprache</ruby>

<rp>Browser kennt Ruby Element nicht</rp><rt>Eigentliche Information</rt>

Page 16: Html5

MARKUP & ELEMENTEStruktur<section>

<h3>Tätigkeit des Circle</h3><p>…</p>

<time>1997-02-20</time></section>Attribute: cite falls Zitat einer URL

<article>Blogpost oder Widget</article>Attribute: cite, pubdate

Page 17: Html5

MARKUP & ELEMENTEStruktur

<h1>c-base Ringe</h1><section> <h1>clamp</h1>

<h1>carbon</h1><h1>cience</h1>

</section><small>Draufsicht</small>

Page 18: Html5

MARKUP & ELEMENTEStruktur

<hgroup> <h1>carbon</h1>

<h2>Die Kohlenstoffeinheiten</h2></hgroup>

Page 19: Html5

MARKUP & ELEMENTEStruktur

<header> <h1>HTML5 Seminar</h1></header>

<footer> <p>macro</p> <p>Creative Commons Namensnennung 3.0 DE Lizenz</p></footer>

Page 20: Html5

MARKUP & ELEMENTEStruktur

<aside> <p>Weiterführende Infos</p></aside>

<nav> <ul>Hauptnavigation <li>Startseite</li> </ul></nav>

Page 21: Html5

MARKUP & ELEMENTE

Page 22: Html5

MARKUP & ELEMENTEStruktur<figure> Diagramm, Abbildung</figure>

<figcaption> Bildunterschrift</figcaption>

Page 23: Html5

NEUE FORMULARELEMENTEDatalist <input type="text" id=„r" name="r"

list="7ringe">

<datalist id="7ringe"> <option value="core">

<option value="com"> <option value="cult">

<option value="cience"> </datalist>

Page 24: Html5

NEUE FORMULARELEMENTEPlatzhalter Text

<input type="text" id="i" name="i" placeholder="sehr schön">

Page 25: Html5

NEUE FORMULARELEMENTEPlatzhalter Text – Abfrage des Elementesfunction elementSupportsAttribute(element,attribute)

{ var test = document.createElement(element); if (attribute in test) { return true; } else { return false; }}if(!elementSupportsAttribute("input","placeholder"))

{ // Javascript fallback}

Page 26: Html5

NEUE FORMULARELEMENTEInput Types <input type="search" id="a" name="a">

<input type="email" id="b" name="b"> <input type="url" id="c" name="c"> <input type="tel" id="d" name="d">

Page 27: Html5

NEUE FORMULARELEMENTEInput Types <input type="range" id="e" name="e">

<input type="range" id="e" name="e" min="1" max="5">

<input type=“number" id="e" name="e" min="5" max="20">

Page 28: Html5

NEUE FORMULARELEMENTEInput Types <input type="date" id="d" name="d">

date 2010-12-31datetime 2010-12-31T23:42:00+01datetime-local 2010-12-31T23:42:00time 23:42:00month 2010-12

Page 29: Html5

NEUE FORMULARELEMENTEInput TypesReg Ex <input id="zip" name="zip“

pattern="[\d]{5}(-[\d]{4})">

Color picker <input type="color" id="c" name="c">

Page 30: Html5

NEUE FORMULARELEMENTECommand<menu> <command onclick="undo()" label="Undo"/> <command onclick="redo()" label="Redo"/> </menu>

Attribute: type (command (default), checkbox, radio), label, icon(url), disabled, radiogroup, checked, title

Page 31: Html5

NEUE FORMULARELEMENTEKeygen<keygen> control for generating a public-private key pair and for

submitting the public key from that key pair</keygen>

Attribute: autofocus, challenge, disabled, form, keytype, name

Page 32: Html5

NEUE FORMULARELEMENTEOutput<output value="Ergebnis" for="input1"

id="o" name="o" />

Attribute: for (auf welche ID sich Output bezieht), form (Formularname)

Page 33: Html5

RICH MEDIASVG<svg> <circle id="myCircle" cx="50%" cy="50%"

r="100" fill="url(#myGradient)" onmousedown="alert('Kreis');"/>

</svg>

Page 34: Html5

RICH MEDIAAudio<audio src="sound.mp3" autoplay loop></audio>

Boolean attributesAutoplay == autoplay="no" == autoplay="false"== autoplay="autoplay"

Page 35: Html5

RICH MEDIAAudio<audio src="sound.mp3" controls></audio>

Bufferingpreload="none" preload="auto"preload="metadata"

Page 36: Html5

RICH MEDIA

Page 37: Html5

RICH MEDIAAudio – Die Formate<audio controls> <source src="sound.ogg" type="audio/ogg"> <source src="sound.mp3" type="audio/mpeg"> <object type="application/x-shockwave-

flash" data="player.swf… > <param … > <a href="sound.mp3">Download</a> </object></audio>

Page 38: Html5

RICH MEDIAScript API<audio controls id="player"> <source src="files/sound.ogg" type="audio/ogg"> <source src="files/sound.mp3" type="audio/mpeg"></audio><div> <button onclick="document.getElementById('player')

.play()"> PLAY </button> <button onclick="document.getElementById('player')

.pause()"> PAUSE </button> <button onclick="document.getElementById('player')

.volume+=0.1()"> LAUTER </button> <button onclick="document.getElementById('player')

.volume-=0.1()"> LEISER </button></div>

Page 39: Html5

RICH MEDIAVideo<video src="movie.mp4" controls

width="360" height="240" poster="startbild.jpg">

</video>

Page 40: Html5

RICH MEDIAVideo – Die Formate<video controls width="360" height="240"

poster="startbild.jpg"> <source src="movie.ogv" type="video/ogg"> <source src="movie.mp4" type="video/mp4"> <object type="application/x-shockwave-

flash" data="player.swf… > <param … > <a href="movie.mp4">Download</a> </object></video>

Page 41: Html5

RICH MEDIACanvas – Scriptable Bitmaps<canvas id="c1" width="300" height="200"> <p>Kein canvas? Geh weg!</p></canvas>

var canvas = document.getElementById("c1");var context = canvas.getContext("2d");context.fillStyle = "rgb(255,0,0)"; context.fillRect(30, 30, 50, 50);

Page 42: Html5

RICH MEDIACanvas – Scriptable BitmapsRechtecke

fillRect(x,y,Breite,Höhe);strokeRect(x,y,Breite,Höhe);clearRect(x,y,Breite,Höhe);

PfadebeginPath();closePath();Stroke();fill();

Page 43: Html5

RICH MEDIACanvas – Scriptable BitmapsPfade

moveTo(x,y);lineTo(x1,y1);bezierCurveTo(x2a,y2a,x2,y2);quadraticCurveTo(x2a,y2a,x2,y2);arcs (x,y,r,W1,W2,Gegenuhrzeiger);

Page 44: Html5

RICH MEDIACanvas – Scriptable BitmapsBilder erstellen, laden, verändern, speichern

und exportierenhttp://www.addyosmani.com/resources/canvasphoto/

Ausgangsbild: Bild auf der Seite, Image-Objekt, Canvas-Objekt

drawImage(Bild,x,y,…)-Methode

Page 45: Html5

RICH MEDIACanvas – Scriptable BitmapsTexte, FarbverläufeSchatten, SpiegelungenBilder und Videos auslesen (Pixel per Pixel)Linienstile u.v.m.https://developer.mozilla.org/en/canvas_tutorialhttp://canvas.quaese.de/

Page 47: Html5

WEITERFÜHRENDESJavascript APIsVideo & Audio CanvasDrag & Drop GeolocationLocal Storage HistorySelectors Inline EditingServer Events MessagingWeb Sockets Offline AppsWebWorkers

Page 48: Html5

WEITERFÜHRENDESStyling der neuen Eletmentesection, article, header, footer, nav, aside,

hgroup { display:block; }

Internet Explorer document.createElement('section');<!- -[if IE]> <script src=

http://html5shiv.googlecode .com/svn/trunk/html5.js</script>

<![endif]- ->

Page 49: Html5

WEITERFÜHRENDESARIA – Accessible Rich Internet Applications

<p role="tooltip">Tooltip</p>

P[role="tooltip"] {font-size:80%;}

http://www.w3.org/TR/wai-aria/roles#role_definitions

Page 50: Html5

WEITERFÜHRENDESValidationhttp://validator.nuhttp://validator.w3.org

http://html5test.com/

Feature detectionhttp://www.modernizr.com

Page 51: Html5

WEITERFÜHRENDESÜber HTML5http://adactio.com/jounal/tag/html5http://html5doctor.comhttp://css3-html5.de/http://html5demos.com

Specshttp://whatwg.org/html5

Page 52: Html5

WEITERFÜHRENDES

Spenden nicht vergessen