377
Edge 12
433
Edge 13 460
Edge 14 370
492
Safari 9.1
Chrome 51
0
555
19
312
461
Internet Explorer 6
Internet Explorer 11
Firefox 48
desktop browsers results on html5test.com
Slide 7
Slide 8
?weird browsers?
Slide 9
Slide 10
Slide 11
Slide 12
Slide 13
Slide 14
Slide 15
Slide 16
Slide 17
Slide 18
Slide 19
Slide 20
Slide 21
Slide 22
Slide 23
?weird browsers?
Slide 24
?weird browsers?
Slide 25
game consoles
Slide 26
portable game consoles
Slide 27
smart tvs
Slide 28
e-readers
Slide 29
smartwatches
Slide 30
photo cameras
Slide 31
fridges
Slide 32
cars
Slide 33
vr headsets
Slide 34
Slide 35
smart tvs, set-top boxes and consoles
Slide 36
“big screen browsers”
Slide 37
Slide 38
television browsers are pretty good the last generation of television sets use operating systems that originate from mobile
Slide 39
218
Google TV
427
LG WebOS 371 199
Panasonic Firefox OS
LG Netcast
0
555
261
Panasonic Viera
352
490
Samsung 2014
Samsung Tizen 478
Opera Devices smart tv results on html5test.com
Slide 40
57
258
Playstation 3
Playstation TV
108
289
Xbox 360
Playstation 4
0
555
65
256
401
Wii
Wii U
Xbox One with Edge
console results on html5test.com
Slide 41
Slide 42
1 control
Slide 43
the biggest challenge of of television browsers
Slide 44
navigation (without mouse or touchscreen)
Slide 45
d-pad
Slide 46
navigation with the d-pad
Slide 47
but it can be worse: moving the cursor with the arrow keys
Slide 48
alternatives
Slide 49
analog controllers
Slide 50
remotes with trackpad
Slide 51
remotes with airmouse
Slide 52
second screen
Slide 53
many manufacturers also create apps for controlling the smart tv, console or set-top box
Slide 54
Slide 55
Slide 56
text input (without keyboard)
Slide 57
d-pads
Slide 58
text input with the d-pad
Slide 59
alternatives
Slide 60
remotes with keyboards
Slide 61
wireless keyboards
Slide 62
and apps
Slide 63
Slide 64
gesture control (throw your hands up in the air, and wave ’em like you just don’t care)
Slide 65
navigation with gesture control
Slide 66
can we control these input methods directly from javascript?
complication:
meta viewport is not supported it is not possible to get the same layout viewport width in all of the different browsers
Slide 103
complication:
device pixel ratio is not supported there is no proper way to show images with the same resolution as the physical screen
Slide 104
800 pixels
nintendo wii
Slide 105
980 pixels
nintendo wii u
Slide 106
960 pixels
lg webos
Slide 107
1041 of 1050 pixels
microsoft xbox 360
Slide 108
1200 of 1236 pixels
microsoft xbox one
Slide 109
1824 pixels
sony playstation 3
Slide 110
1920 pixels
sony playstation 4
Slide 111
Nintendo Wii
800
LG WebOS
960
Nintendo Wii U
980
Philips 2014 series
980
Google TV
1024
Playstation TV
1024
Samsung Tizen
1024
Xbox 360
1051
Xbox One
1200
LG Netcast
1226
Panasonic Viera
1256
Opera Devices
1280
Samsung 2014 series
1280
Panasonic Firefox OS
1536
Playstation 3
1824
Playstation 4
1920
Slide 112
device pixels != device pixels (of course not)
Slide 113
sometimes devices pixels are not physical devices pixels, but virtual device pixels the browser renders in a lower resolution which is upscaled to the resolution of the display
Slide 114
3 distance to the screen
Slide 115
20 inch
Slide 116
20 inch
Slide 117
10 foot
Slide 118
“Make fonts and graphics on the site larger to account for viewing distance. People sit proportionally farther from a TV than from a computer monitor of the same size.” – Internet Explorer for Xbox One Developer Guide
https://msdn.microsoft.com/en-us/library/dn532261(v=vs.85).aspx
Slide 119
Make your text and images two to three times bigger
Slide 120
Make your text and images two to three times bigger
Slide 121
Make your text and images two to three times bigger
Slide 122
youtube tv website
Slide 123
responsive design the size of the contents is determined by the width of the viewport
Slide 124
1
use percentages for positioning .left { width: 60%; } .right { left: 60%; width: 40%; }
Slide 125
2
base the fontsize on the viewport document.body.style.fontSize = ((window.innerWidth / 1920) * 300) + ‘%’;
Slide 126
3
or maybe use viewport units – with polyfill body { font-size: 3vw; } .left { width: 60vw; height: 100vh; } .right { width: 40vw; height: 100vh; }
Slide 127
4
use a safe margin around the contents body { padding: 5%; }
Slide 128
identifying smart tv’s (css for televisions)
Slide 129
1
×
css media types @media tv { body {
font-size: 300%; } }
Slide 130
1
css media types
all television browsers use the css media type ‘screen’
3
useragent sniffing
not all smart tv’s are recognisable Mozilla/5.0 (X11; Linux; ko-KR) AppleWebKit/534.26+ (KHTML, like Gecko) Version/5.0 Safari/534.26+
Slide 135
4
couch mode
the only reliable way to optimise a website for television is to make two different websites… or give the user the ability to switch on couch mode
Slide 136
4 be careful with feature detection
Slide 137
“Basically every feature that talks to the operating system or hardware, is suspect.” – Me
http://blog.html5test.com/2015/08/the-problems-with-feature-detection/
Slide 138
if (!!navigator.geolocation) { navigator.geolocation.getCurrentPosition( success, failure ); } else { // alternative }
Slide 139
if (!!navigator.geolocation) { navigator.geolocation.getCurrentPosition( success, failure ); }
1
failure is called with a “permission denied” error code
2
no callback at all to success or failure
Slide 140
if (!!navigator.geolocation) { navigator.geolocation.getCurrentPosition( success, failure ); }
3
success is called with longitude = 0 and latitude = 0
4
success is called with the coordinates of Mountain View, USA
Slide 141
is there a future for web apps on the big screen?
Slide 142
Slide 143
the new apple tv does not ship with a browser by default
Slide 144
android tv does not ship with a browser by default
Slide 145
Slide 146
e-readers
Slide 147
152
Kindle Touch
280
Kobo
147
Sony Reader
0
555
154
Pocketbook
e-reader results on html5test.com