73
semântica uma jornada pelos componentes web

Semântica: Uma jornada pelos componentes web

Embed Size (px)

DESCRIPTION

História do HTML, Semântica do HTML5, WAI ARIA, Microdata, Open Graph Protocol e Web components.

Citation preview

Page 1: Semântica: Uma jornada pelos componentes web

semânticauma jornada pelos componentes web

Page 2: Semântica: Uma jornada pelos componentes web

bernard de luna@bernarddeluna

Page 3: Semântica: Uma jornada pelos componentes web

- team leader de produto na Petrobras- creative director da Melt DSP- criador do treinamento Coding on Weekend- colunista do iMasters e Tableless - +50 eventos pelo Brasil- HTML5DevConf em San Francisco

Page 4: Semântica: Uma jornada pelos componentes web
Page 5: Semântica: Uma jornada pelos componentes web

1991

Page 6: Semântica: Uma jornada pelos componentes web

20 elementos criadosHTML nasceu

Page 7: Semântica: Uma jornada pelos componentes web

1994

Page 8: Semântica: Uma jornada pelos componentes web
Page 9: Semântica: Uma jornada pelos componentes web
Page 10: Semântica: Uma jornada pelos componentes web

é como você escreve email marketing

HTML 2.0

Page 11: Semântica: Uma jornada pelos componentes web

imagemap

Page 12: Semântica: Uma jornada pelos componentes web

1995

Page 13: Semântica: Uma jornada pelos componentes web

Javascript foi lançado!

Page 14: Semântica: Uma jornada pelos componentes web

Habemusinternet explorer!

Page 15: Semântica: Uma jornada pelos componentes web

hoje

Page 16: Semântica: Uma jornada pelos componentes web

HTML5 não é mais o futuro, HTML5 não é nem mais o presente.

zenorocha

Page 17: Semântica: Uma jornada pelos componentes web

HTML > seções

Page 18: Semântica: Uma jornada pelos componentes web

footer

main

header

Page 19: Semântica: Uma jornada pelos componentes web

footer

main elemento único e não pode estar dentro de nenhuma outra seção

header

Page 20: Semântica: Uma jornada pelos componentes web

footer

header

article aside

Page 21: Semântica: Uma jornada pelos componentes web

footer

header

article aside

article

article

article

Page 22: Semântica: Uma jornada pelos componentes web

footer

header

article aside

section

Page 23: Semântica: Uma jornada pelos componentes web

footer

header

article aside

section

nav

Page 24: Semântica: Uma jornada pelos componentes web

HTML > embed

Page 25: Semântica: Uma jornada pelos componentes web

track

video

audio

<video src="brave.webm">

<track kind=”subtitles” src=”brave.pt.vtt” srclang=”pt” label="Português">

</video>

Page 26: Semântica: Uma jornada pelos componentes web

svg

canvas

track

video

audio

Page 27: Semântica: Uma jornada pelos componentes web

HTML > texto

Page 28: Semântica: Uma jornada pelos componentes web

italic< i >

bold< b >

underline

< u >small

< small >

Page 29: Semântica: Uma jornada pelos componentes web

italic< i >

bold< b >

underline

< u >small

< small >

Page 30: Semântica: Uma jornada pelos componentes web

voz alternada

< i >

Page 31: Semântica: Uma jornada pelos componentes web

chamar atenção sem transmitir importância

< b >

Page 32: Semântica: Uma jornada pelos componentes web

trecho de texto desarticulado

< u >

Page 33: Semântica: Uma jornada pelos componentes web

pequeno trecho de texto

< small >

Page 34: Semântica: Uma jornada pelos componentes web

estendendo a semântica HTMLWAI ARIA

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

Page 35: Semântica: Uma jornada pelos componentes web

Aplicações que utilizam ARIA promovem a acessibilidade de componentes que não são contemplados pelas WCAG.

reinaldoferraz

Page 36: Semântica: Uma jornada pelos componentes web

role=”contentinfo”

role=”banner”

Page 37: Semântica: Uma jornada pelos componentes web

role=”contentinfo”

role=”banner”

role=”complementary

”role=”article”

Page 38: Semântica: Uma jornada pelos componentes web

role=”contentinfo”

role=”banner”

role=”complementary

”role=”article”

role=”article”

role=”region”

Page 39: Semântica: Uma jornada pelos componentes web

role=”contentinfo”

role=”banner”

role=”complementary

role=”navigation”

role=”article”

role=”article”

role=”region”

Page 40: Semântica: Uma jornada pelos componentes web

reconhecimento para buscamicrodata

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

Page 41: Semântica: Uma jornada pelos componentes web

cria um grupoitemscope

especifica um itemitemtype

valor de um itemitemprop

Page 42: Semântica: Uma jornada pelos componentes web

<div itemscope itemtype="http://schema.org/Person">

  <span itemprop="name">Bernard De Luna</span>  <img src="be-bonitao.jpg" itemprop="image" />

  <span itemprop="jobTitle">palestrante</span>

  <a href="mailto:[email protected]" itemprop="email">[email protected] </a>

  <a href="http://www.bernarddeluna.com" itemprop="url">bernarddeluna.com</a>

</div>

Page 43: Semântica: Uma jornada pelos componentes web

person place organization product

itemtype

Page 44: Semântica: Uma jornada pelos componentes web

http://www.google.com/webmasters/tools/richsnippets

Page 45: Semântica: Uma jornada pelos componentes web

reconhecimento para facebookopengraph

http://ogp.me/

Page 46: Semântica: Uma jornada pelos componentes web

localização

<html lang="pt-br" prefix="og: http://ogp.me/ns#" >

<head>

<meta property="og:locale" content="pt_BR"> </head>

</html>

Page 47: Semântica: Uma jornada pelos componentes web

título e descrição

<meta property="og:title" content="Semântica: uma jornada pelos componentes web">

<meta property="og:description" content="Vamos passear pela criação do HTML, seus significados para humanos, robôs e seu futuro, os web components.">

Page 48: Semântica: Uma jornada pelos componentes web

tipo

<meta property="og:type" content="website">

Page 49: Semântica: Uma jornada pelos componentes web

imagem

<meta property="og:image" content="http://frontinsampa.com.br/img/temp/bernard.jpg">

Page 50: Semântica: Uma jornada pelos componentes web

e dizem para não usar mais meta tags

Page 51: Semântica: Uma jornada pelos componentes web

um futuro chamadowebcomponents

http://ogp.me/

Page 52: Semântica: Uma jornada pelos componentes web

customelements

Page 53: Semântica: Uma jornada pelos componentes web

que tal expandir ou criar a sua própria tag HTML?

customelements

Page 54: Semântica: Uma jornada pelos componentes web
Page 55: Semântica: Uma jornada pelos componentes web

<bernard-luna> </bernard-luna>

customelements

Page 56: Semântica: Uma jornada pelos componentes web

<camera-element> </camera-element>

customelements

http://customelements.github.io/camera-element/

Page 57: Semântica: Uma jornada pelos componentes web

<x-slidebox> </x-slidebox>

customelements

http://registry.x-tags.org/x-tag/slidebox/x-slidebox/view

Page 58: Semântica: Uma jornada pelos componentes web

templates

Page 59: Semântica: Uma jornada pelos componentes web

templates

criar templates com pedaços de código para reutilização

Page 60: Semântica: Uma jornada pelos componentes web

templates

<template id="user-profile"> <h1>Bernard De Luna</h1>

<img src="be.jpg" /></template>

Page 61: Semântica: Uma jornada pelos componentes web

shadowdom

Page 62: Semântica: Uma jornada pelos componentes web

shadowdom

blocos de código encapsulados dentro do DOM

Page 63: Semântica: Uma jornada pelos componentes web

shadowdom

<input

id="busca-campo"

type="text"

name="query"

autocomplete="off"

accesskey="s"

lang="pt-BR"

x-webkit-speech=""

speech=""

>

Page 64: Semântica: Uma jornada pelos componentes web
Page 65: Semântica: Uma jornada pelos componentes web

shadowdom

<video>

<source />

</video>

Page 66: Semântica: Uma jornada pelos componentes web
Page 67: Semântica: Uma jornada pelos componentes web

<div id=”cart”> </div>

http://registry.x-tags.org/x-tag/slidebox/x-slidebox/view

shadowdom

Page 68: Semântica: Uma jornada pelos componentes web

import

Page 69: Semântica: Uma jornada pelos componentes web

import

reutilização de web components como arquivos externos

<link rel="import" href="camera" />

Page 70: Semântica: Uma jornada pelos componentes web
Page 71: Semântica: Uma jornada pelos componentes web

@zenorocha@eduardolundgren@bernarddeluna

Page 72: Semântica: Uma jornada pelos componentes web
Page 73: Semântica: Uma jornada pelos componentes web

@bernarddelunaobrigado!