76
hi

hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

hi

Page 2: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

| Basel

HTML5

a pragmatic guideMartin Beeby

Technical Evangelist

@thebeebs

Page 3: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Agenda

Agenda

What is HTML5 20’Browsers 5’

Standards Bodies 5’

Basics 5’

Features 30’HTML 10’

SVG 5’

JavaScript 8’

CSS3 7’

Page 4: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

| Basel

Perfect Competition

Browsers

Page 5: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Internet Explorer

Founded in 1995

Version 11

Rendering Engine: Trident

Page 6: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Firefox

Founded in 2002

Version 25

Rendering Engine: Gecko, Working with Samsung on Servo.

Page 7: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Safari

Version 7

Rendering: Webkit

Page 8: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Opera

Founded 1994

Version 17

Rendering: Presto/Blink

Page 9: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Chrome

Founded 2008

Version 30

Rendering: Webkit/Blink

Page 10: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Differences

Various Features

Subtly Different implementations

Various Vendor Prefixes

-ms, -moz, -webkit, -o

Page 11: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Similarities

HTML5 Parser

<b><i>Hi</b></i>

More similar than ever before

Page 12: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

| Basel

What is HTML5?

Page 13: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

<!DOCTYPE HTML>

Page 14: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Agenda

A specification

Page 15: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

http://www.w3.org/TR/html51/

Page 16: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Symantic Markup

<header id="masthead">

<nav class="navbar navbar-fixed-top">

<a href="/">Home</a>

<a href="/">Privacy Policy</a>

</nav>

</header>

Nav

Article

Aside

Figure

Section

Page 17: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow
Page 18: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Older Browsers

IE6-8 Don’t support the new elements

HTML5 Shiv/Shim<!--[if lt IE 9]><script src="dist/html5shiv.js"></script><![endif ]-->

http://code.google.com/p/html5shiv/

Page 19: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

| Basel

Feature Detection

Page 20: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Conditional Comments

<!--[if IE]> This content is ignored in Internet Explorer 10 and other browsers. In older versions of Internet Explorer, this renders as part of the page. <![endif ]-->

Page 21: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

User Agent Sniffing

if (-1 != navigator.userAgent.indexOf("MSIE"))

{

document.write('NO SUPPORT');

}

else if (-1 != navigator.userAgent.indexOf("Firefox") || -1 != navigator.userAgent.indexOf("Chrome") || -1 != navigator.userAgent.indexOf("Safari")) {

}

else {

document.write('NO SUPPORT');

}

Page 22: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Supports Canvas?

return !!document.createElement('canvas').getContext;

Page 23: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Supports Video

return !!document.createElement('video').canPlayType;

Page 24: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow
Page 25: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Improved Intellisense

Page 26: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

COLOUR PICKER

Page 27: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

BROWSER SUPPORT

Page 28: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Less

Page 29: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

LESS

Page 30: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

COMPLILES TO CSS

Page 31: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Modernizr - http://modernizr.com

Detects features.

You can use a JS library.

Adds CSS classes to the HTML element of the document. So you can base CSS on the features of the browser.

Includes HTML5 shim

Page 32: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Modernizr – JavaScript API

if (Modernizr.video){

// The browser supports HTML5 video

}

if (Modernizr.video.ogg == 'probably'){

// The browser has ogg format support

}

Page 33: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Modernizr – CSS Classes

<html class=" js flexbox no-flexbox-legacy canvas canvastext no-webgl no-touch geolocation postmessage no-websqldatabase indexeddb hashchange history draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow opacity cssanimations csscolumns cssgradients no-cssreflections csstransforms csstransforms3d csstransitions fontface generatedcontent video audio localstorage sessionstorage webworkers applicationcache svg inlinesvg no-smil svgclippaths" lang="en>

Page 34: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

| Basel

New Features

Page 35: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Canvas

var supportsCanvas, canvasElement, canvasContext;supportsCanvas = !!document.createElement('canvas').getContext;if (supportsCanvas) {

canvasElement = document.getElementById(“flagCanvas");

canvasContext = canvasElement.getContext('2d');;

canvasContext.fillStyle = "rgba(255,0,0,1)";canvasContext.fillRect(0, 0,

canvasElement.clientWidth, canvasElement.clientHeight);canvasContext.fillStyle =

"rgba(255,255,255,1)";canvasContext.fillRect(267, 55, 125, 430);canvasContext.fillRect(118,205, 430, 125);

}

<canvas id=“flagCanvas" width="665" height="532"></canvas>

Page 36: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

ContreJour.ie

Page 37: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

New Canvas 2D Context APIs

• Image Smoothing – create new pixelated effects

• Dashed lines – drawing dashed lines

• Fill rules –allows developers to choose their fill rule

Page 38: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

DirectDraw Surface (DDS) Support

• Use hardware more efficiently

• Reduces your app load time Background images

87.5% less GPU memory usage

• Recommended for in-package assets

Page 39: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Videos

<video poster="movie.jpg" controls><source src="movie.webm" type='video/webm; codecs="vp8.0, vorbis"'/><source src="movie.ogg" type='video/ogg; codecs="theora, vorbis"'/><source src="movie.mp4" type='video/mp4; codecs="avc1.4D401E, mp4a.40.2"'/><p>This is fallback content</p>

</video>

Page 40: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

http://ubelly.com/mobelly

CSS3 2D Transforms

Page 41: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

| Basel

Professional Quality Video

Page 42: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Demo: Plug-in Free Netflix Experience

Page 43: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Media Source Extension (MSE)

What is MSE?

• Specifies an HTML extension API that defines the implementation of adaptive streaming in the browser

Video

Elementsrc

Source

Buffer

Audio

Source

Buffer

Video

Media

SourceSource buffer

Page 44: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Encrypted Media Extensions (EME)

What is EME?

• Specifies an HTML extension API that defines access to DRM implementations contained in the web platform

msneedkeyMSMedia

Keys

MediaKey

Session

Video

Element

Page 45: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Fullscreen APIs

What is it?

• Web standard that enables HTML elements to take over the full screen window area.

Page 46: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

| Basel

Speech

Page 47: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Agenda

Forms

Page 48: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

TechDays 13 Conference

13

<input type=number>

<input

type=search>

Page 49: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

SVG

<svg xmlns="http://www.w3.org/2000/svg"

width="1000" height="1000"

viewBox="0 0 32 32">

<rect fill="#f00" height="32" width="32" />

<rect fill="#fff" height="6" width="20" x="6"y="13" />

<rect fill="#fff" height="20" width="6" x="13"y="6" />

</svg>

Page 50: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow
Page 51: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

| Basel

Other Specs

Page 52: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Web Crypto API

What are Web Crypto APIs?

• Web standard that defines a JS API for performing basic cryptographic operations in a web application

• Most complete WebCrypto implementation on the web

Page 53: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Algorithms Supported

Key Generation• AES-CBC• AES-GCM• HMAC (SHA-1, SHA-256, SHA-384)• RSAES-PKCS1-v1_5• RSASSA-PKCS1-v1_5• RSA-OAEPEncrypt/Decryption• AES-CBC• AES-GCM• RSAES-PKCS1-v1_5• RSA-OAEP

Wrap/Unwrap• AES-KW• RSA-OAEP• AES-GCMImport/Export Keys Formats• Raw• pkcs8• spki• jwk

Page 54: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

| Basel

WebSockets

Page 55: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

| Basel

WebWorkers

Page 56: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Storage

AppCache

IndexedDb

LocalStorage

WebSQL

Page 57: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Touch

Page 58: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Agenda

Touching the web

Page 59: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Agenda

Touch

Touch Events

Pointer Events (Mouse,

Touch, Pen)

Pointer.JS

http://smus.com/mouse-touch-pointer/

Page 60: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Agenda

provide feedback

CSS3 animations

@keyframes upKeys {

from { transform:scale(0.95, 0.95) }

to { transform:scale(1, 1) }

}

@keyframes downKeys {

from { transform:scale(1, 1) }

to { transform:scale(0.95, 0.95) }

}

.up {

animation: upKeys 167ms cubic-bezier(0.1, 0.9, 0.2, 1);

animation-fill-mode: forwards;

}

.down {

animation: downKeys 167ms cubic-bezier(0.1, 0.9, 0.2, 1);

animation-fill-mode: forwards;

}

Page 61: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow
Page 62: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

One in 30 taps

will miss the

target

1 in 100 1 in 200

0.00%

5.00%

10.00%

15.00%

20.00%

25.00%

30.00%

3mm 5mm 7mm 9mm 11mm 13mm

% OF MISSED TAPS

Page 63: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

2mm padding (10 pixel) between targets

7x7mm = 40 pixels

5x5mm = 30 pixels

9x9mm = 50 pixels

2mm padding (10 pixels) between targets

2mm padding (10 pixels) between targets

when it just won’t fit

when accuracy matters

recommended minimum size

Page 64: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

| Basel

CSS3

Page 65: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Media Querieshttp://mediaqueri.es/

Page 66: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow
Page 67: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow
Page 68: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

@-ms-viewport{width: device-width;

}

Page 69: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

CSS3 2D Transforms

Page 70: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Agenda

Page 71: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow

Agenda

2D-3D Transforms

rgb(167,14,61) rgb(167,14,61)

<style>body {

margin-top:100px;}h2 {

background-color: rgb(167,14,61);color:rgb(255,255,255);font-family:Arial;padding:10px 10px 10px 30px;margin:7px;margin-left:-30px;display:block;font-size:40px;

transform-origin: 0% 0%;transform: translate(0px, 0px) rotate(-13deg) scale(1);

}

h2:nth-child(1) {width:220px;

}h2:nth-child(2) {

width:150px;}

Page 72: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow
Page 73: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow
Page 74: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow
Page 75: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow
Page 76: hidownload.microsoft.com/download/3/0/E/30E8E435-33D1-47B0... · 2018-10-13 · draganddrop websockets rgba hsla multiplebgs backgroundsize no-borderimage borderradius boxshadow textshadow