113
Aktuelle Webtechnologien HTML5, CSS 3, JavaScript und mehr! @yveshoppe

Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Embed Size (px)

Citation preview

Page 1: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Aktuelle WebtechnologienHTML5, CSS 3, JavaScript und mehr!

@yveshoppe

Page 2: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 3: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 4: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Geschichte

Page 5: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Geschichtevon HTML52008 - Erster Entwurf

2012 - Empfehlungen

2014 - Standard

WHATWG

Page 6: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

HTML5 ist mehr als Web

Page 7: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 8: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 9: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 10: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<!DOCTYPE html>

Page 11: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Video / Audio

Page 12: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<video autoplay controls> <source src="test.mp4" type="video/mp4"> <source src="test.ogg" type="video/ogg"> Ihr Browser unterstützt kein HTML5 Video!</video>

Page 13: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 14: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<audio controls> <source src="test.ogg" type="audio/ogg"> <source src="test.mp3" type="audio/mpeg"> Ihr Browser unterstützt kein HTML5 Audio!</audio>

Page 15: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

SVG

Page 16: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<svg width="400" height="180"> <rect x="50" y="20" rx="20" ry="20" width="150" height="150" style="fill:red; stroke:black; stroke-width:5; opacity:0.5"/></svg>

Page 17: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Strukturierung

Page 18: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<header>

Page 19: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<nav>

Page 20: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<article>

Page 21: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<section>

Page 22: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<aside>

Page 23: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<footer>

Page 24: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<header>

<nav>

<main>

<article>

<article>

</main>

<footer>

Page 25: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Formular Elemente

Page 26: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<input />

Page 27: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<input type="number" min="0" max="100"

step="10" />

Page 28: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<input type="date" name="geb" />

Page 29: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<input type="color" name="bg" />

Page 30: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<input type="range" name="punkte"

min=”0” max=”42” />

Page 31: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<input type="text" name="name" placeholder="Vorname / Name" />

Page 32: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Validierung (& ARIA)

Page 33: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<input type="text" min="3" max="100"

required="required" />

Page 34: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<input type="email" required="required" />

Page 35: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<input type="url" required="required" />

Page 36: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<input type="tel" required="required" />

Page 37: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Eingabe Restriktionen (Attribute)

● min● max● pattern● required● step

Page 38: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Vorteile

Page 39: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Mobile first/

Anpassung des Inhalts auf Smartphones

Page 40: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Ersetzt an vielen Stellen JavaScript/

Spart Ressourcen & schnellere Ladezeiten

Page 41: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Multimedia Inhalte/

Kein Flash mehr

Page 42: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Offline Daten/

Speicherung von Daten lokal im Client

Page 43: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Nachteile

Page 44: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Browser abhängige Ausgabe

Page 45: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Probleme mit Internet Explorer 8

IE 8 erlaubt nicht unbekannte Elemente per CSS zu stylen

HTML5shiv ermöglicht Kompatibilität für die meisten Browser älter als IE9

Page 46: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Browser Market Share 09/2016 Quelle: netmarketshare.com

Page 47: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

2,13%Anteil IE 6/7/8 im Dezember 2015

Lasst die alten Browser endlich sterben!

Page 48: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Best practices

Page 49: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Nicht der Kurzschreibweise verfallen/

XHTML Schreibweise

Page 50: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<!DOCTYPE html><html><head><title>Test<body><h3>Willkommen<p>Absatz 1<p>Absatz 2

Page 51: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

KEINE inline styles/

<input .. style=”background: #ccc”

Page 52: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

KEIN inline script/

<input .. onclick=”alert(42);return false”

Page 53: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Geräte Limitierungen beachten/

Fallback Lösungen

Page 54: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

WYSIWYG Editoren vermeiden/

Sauberes Markup

Page 55: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Möglichst wenige Anfragen/

Max. 20-30 Requests pro Seite

Page 56: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Tools

Page 57: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Firefox DeveloperDie Edition für Web-Designer

und Entwickler

https://www.mozilla.org/en-US/firefox/developer/

Page 58: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

CanIUse.comIn welchen Browsern funktioniert

welches HTML5 und CSS3 feature?

http://caniuse.com/

Page 59: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Atom EditorEin Editor mit der Power der neuen Webtechnologien.

https://atom.io/

Page 60: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

WebStormDie Entwicklungsumgebung die mitdenkt.

https://www.jetbrains.com/webstorm

Page 61: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

W3C ValidatorÜberprüfung des HTML Markups anhand der W3C Standards

https://jigsaw.w3.org/

Page 62: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 63: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Border & Shadow

Page 64: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<div class="border"></div>

<style> .border { border-radius: 15px; }</style>

Page 65: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<div class="shadow"></div>

<style> .shadow { box-shadow: 10px 10px 5px #888888; }</style>

http://www.cssmatic.com/box-shadow

Page 66: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

CSS Layout Technologien

FlexboxCSS-Grid LayoutBox-Alignment

Page 67: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Flexbox

Page 68: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 69: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

CSS Grid Layout

Page 70: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 71: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Zurück zu Flexbox

Page 72: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Vorteile Flexbox

● Kein Float und Clear mehr● Gleiche Höhe möglich!● Responsive von Haus aus● Weniger Code

Page 73: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Wer benutzt Flexbox

● Foundation 6● Bootstrap 4● Flexboxgrid.com, bulma.io● Booking.com, theguardian.com

...

Page 74: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Flexbox AchsenMain Axis

Cross Axis

Page 75: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<div class="parent"><div class="child">

</div><div class="child"></div>

</div>

<style> .parent { display: flex; flex-direction: row; flex-wrap: wrap; }</style>

row

row-reverse

Page 76: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<style> .parent { align-items: flex-start;

/* flex-end, center, stretch */ }</style>

Page 77: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<style> .child-1 { order: 3; } .child-2 { order: 1; } .child-3 { order: 2; }</style>

2 13

Page 78: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Flexbox TesterKalkulation der Größen in

Flexbox

https://madebymike.com.au/demos/flexbox-tester/

Page 79: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Animations

Page 80: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<div class="animate"></div>

<style> .animate { /* Styles.. width, height */ position: relative; animation-name: sample; animation-duration: 4s; } @keyframes sample { 0% {background-color:red; left:0px; top:0px;} 25% {background-color:yellow; left: 0px; top:200px;} 50% {background-color:blue; left:200px; top:200px;} 75% {background-color:green; left:200px; top:0px;} 100% {background-color:red; left:0px; top:0px;} }</style>

1

2 3

4

Page 81: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Best practices

Page 82: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Lesbarkeit beachten!/

Nicht alles auf einer Zeile!

Page 83: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Elemente organisieren!/

Klare Struktur die dem HTML folgt!

Page 84: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Prioritize / Namespace CSS/

Nie !important

Page 85: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Mehrere Klassen verwenden/

<div class=”box pull-right”

Page 86: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Reset / Normalization!/

Browser Inkonsistenzen vermeiden

Page 87: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

em vs px/

HiDPI Display Support

Page 88: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Less / Sass/

Mehr Möglichkeiten, weniger Arbeit!

Page 89: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Frameworks!/

Mehr Möglichkeiten, weniger Arbeit!

Page 90: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Tools

Page 91: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

FirebugDas wichtigste Tool zur Entwicklungvon Webseiten!

https://addons.firefox.com

Page 92: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

CSS ShrinkOnline Komprimierung (Minify)

von CSS

http://cssshrink.com/

Page 93: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

W3C CSS ValidatorÜberprüfung von CSS anhand der W3C Standards

https://jigsaw.w3.org/css-validator/

Page 94: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 95: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Grid Framework

Page 96: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<div class=”col-xs-12 col-md-6 col-lg-3

Page 97: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<.. col-xs-

Page 98: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<.. col-sm-

Page 99: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<.. col-md-

Page 100: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<.. col-lg-

Page 101: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<.. hidden-xs

Page 102: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

<.. visible-lg

Page 103: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Glyphicons

Page 104: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 105: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

1000 Dinge mehr...

● Normalisierung, Typographie● Buttons, Formulare● Bilder, CSS Helfer● Drop-Downs, Thumbnails, Badges● Popups (Modals), Tooltips, Alerts

Page 106: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Nachteile

Page 107: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Größe/

Mindestens 3 Dateien (CSS, JS + jQuery)mit rund 300 KB

Page 108: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

08/15/

Viele Seiten sehen mehr oder weniger identisch aus

Page 109: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Die Zukunftist JavaScript

Page 110: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 111: Aktuelle Webtechnologien - HTML5, CSS3 und mehr
Page 112: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

“Technology over technique produces emotionless design”

- Daniel Mall

Page 113: Aktuelle Webtechnologien - HTML5, CSS3 und mehr

Fragen?Vielen Dank!

@yveshoppe