"
As the capabilities of the web platform advance, and the pervasiveness of web content proliferates, fundamental design principles are more important than ever: How do you enhance your experience as new capabilities become available in Microsoft Edge and other browsers? You've considered how your content looks and operates on mobile, but how does that design adapt to desktop devices? Is it usable via ""headless"" interfaces like screen readers or Cortana? Does your content adapt gracefully to the constraints of its environment? In this session, Aaron Gustafson will help you think about user experience from its foundation, so you understand what it means to build adaptive web experiences – whether in an app, in a browser, or beyond. We’ll show you some of the newest capabilities coming to Microsoft Edge that let you build differentiated experiences on Windows 10. You’ll walk away practical, cross-platform code examples you can put to use in your projects today, and foundational principles to ensure that your projects are ready for anything. "
40. <div class="entry">
<div class="entry__title">Progressive Web Apps and
the Windows Ecosystem</div>
<div class="entry__meta">
<div><b>Published</b> 24 May 2017</div>
<div><b>Reading Time</b> 25 minutes</div>
</div>
<div class="entry__content">
I had the great pleasure of delivering a talk…
<br><br>
I do a lot of traveling and it’s…
</div>
</div>
41. <article class="entry">
<div class="entry__title">Progressive Web Apps and
the Windows Ecosystem</div>
<div class="entry__meta">
<div><b>Published</b> 24 May 2017</div>
<div><b>Reading Time</b> 25 minutes</div>
</div>
<div class="entry__content">
I had the great pleasure of delivering a talk…
<br><br>
I do a lot of traveling and it’s…
</div>
</article>
42. <article class="entry">
<div class="entry__title">Progressive Web Apps and
the Windows Ecosystem</div>
<div class="entry__meta">
<div><b>Published</b> 24 May 2017</div>
<div><b>Reading Time</b> 25 minutes</div>
</div>
<div class="entry__content">
I had the great pleasure of delivering a talk…
<br><br>
I do a lot of traveling and it’s…
</div>
</article>
43. <article class="entry">
<h1 class="entry__title">Progressive Web Apps and
the Windows Ecosystem</h1>
<div class="entry__meta">
<div><b>Published</b> 24 May 2017</div>
<div><b>Reading Time</b> 25 minutes</div>
</div>
<div class="entry__content">
I had the great pleasure of delivering a talk…
<br><br>
I do a lot of traveling and it’s…
</div>
</article>
44. <article class="entry">
<h1 class="entry__title">Progressive Web Apps and
the Windows Ecosystem</h1>
<div class="entry__meta">
<div><b>Published</b> 24 May 2017</div>
<div><b>Reading Time</b> 25 minutes</div>
</div>
<div class="entry__content">
I had the great pleasure of delivering a talk…
<br><br>
I do a lot of traveling and it’s…
</div>
</article>
45. <article class="entry">
<h1 class="entry__title">Progressive Web Apps and
the Windows Ecosystem</h1>
<dl class="entry__meta">
<dt>Published</dt> <dd>24 May 2017</dd>
<dt>Reading Time</dt> <dd>25 minutes</dd>
</dl>
<div class="entry__content">
I had the great pleasure of delivering a talk…
<br><br>
I do a lot of traveling and it’s…
</div>
</article>
46. <article class="entry">
<h1 class="entry__title">Progressive Web Apps and
the Windows Ecosystem</h1>
<dl class="entry__meta">
<dt>Published</dt> <dd><time>24 May 2017</time></dd>
<dt>Reading Time</dt> <dd>25 minutes</dd>
</dl>
<div class="entry__content">
I had the great pleasure of delivering a talk…
<br><br>
I do a lot of traveling and it’s…
</div>
</article>
47.
48. <article class="entry">
<h1 class="entry__title">Progressive Web Apps and
the Windows Ecosystem</h1>
<dl class="entry__meta">
<dt>Published</dt> <dd><time …>24 May 2017</time></dd>
<dt>Reading Time</dt> <dd>25 minutes</dd>
</dl>
<div class="entry__content">
I had the great pleasure of delivering a talk…
<br><br>
I do a lot of traveling and it’s…
</div>
</article>
49. <article class="entry">
<h1 class="entry__title">Progressive Web Apps and
the Windows Ecosystem</h1>
<dl class="entry__meta">
<dt>Published</dt> <dd><time …>24 May 2017</time></dd>
<dt>Reading Time</dt> <dd>25 minutes</dd>
</dl>
<div class="entry__content">
<div>I had the great pleasure of delivering a talk…</div>
<div>I do a lot of traveling and it’s…</div>
</div>
</article>
50. <article class="entry">
<h1 class="entry__title">Progressive Web Apps and
the Windows Ecosystem</h1>
<dl class="entry__meta">
<dt>Published</dt> <dd><time …>24 May 2017</time></dd>
<dt>Reading Time</dt> <dd>25 minutes</dd>
</dl>
<div class="entry__content">
<p>I had the great pleasure of delivering a talk…</p>
<p>I do a lot of traveling and it’s…</p>
</div>
</article>
51.
52.
53.
54.
55. Hey Cortana, read me the top three
headlines in today’s New York Times
60. Pattern Display Semantics Focusable? Activate By
Submits
Forms
input[type=submit] button button Yes
Mouse, touch,
ENTER, SPACE
Yes
button[type=submit] button button Yes
Mouse, touch,
ENTER, SPACE
Yes
a link
Named
generic
Yes
Mouse, touch,
ENTER
No
div block
Not
exposed
No N/A No
61. Pattern Display Semantics Focusable? Activate By
Submits
Forms
input[type=submit] button button Yes
Mouse, touch,
ENTER, SPACE
Yes
button[type=submit] button button Yes
Mouse, touch,
ENTER, SPACE
Yes
a link
Named
generic
Yes
Mouse, touch,
ENTER
No
div block
Not
exposed
No N/A No
62. Pattern Display Semantics Focusable? Activate By
Submits
Forms
input[type=submit] None None None None None
button[type=submit] None None None None None
a CSS ARIA None JavaScript JavaScript
div CSS ARIA HTML JavaScript JavaScript
97. <b class="hidden">You can</b>
<b class="hidden">“The Web
Should Just Work for
Everyone” in less than
10 minutes</b>
Consider what
your design
leaves unsaid
99. Passwords can be a hassle.
Most people don’t create
strong passwords or make sure
to maintain a different one for
every site. People create easy-
to-remember passwords and
typically use the same
passwords across all of their
accounts.
100. Older browsers without RGBa support, ignore the second rule
Passwords can be a hassle.
Most people don’t create
strong passwords or make sure
to maintain a different one for
every site. People create easy-
to-remember passwords and
typically use the same
passwords across all of their
accounts.
102. (That selects h1s that have adjacent sibling paragraphs.)
Passwords can be
a hassle
103. Browsers that don’t support :has() ignore the entire rule set
Passwords can be
a hassle
104. As browsers support :has(), matching h1s will turn green
Passwords can be
a hassle
105. Passwords can be a hassle.
Most people don’t create
strong passwords or make sure
to maintain a different one for
every site. People create easy-
to-remember passwords and
typically use the same
passwords across all of their
accounts.
106. Browsers without media query support ignore the block
Passwords can be a hassle.
Most people don’t create
strong passwords or make sure
to maintain a different one for
every site. People create easy-
to-remember passwords and
typically use the same
passwords across all of their
accounts.
107. Browsers with media query support apply it
Passwords can be a hassle.
Most people don’t create
strong passwords or make sure
to maintain a different one for
every site. People create easy-
to-remember passwords and
typically use the same
passwords across all of their
accounts.
108. Passwords can be a hassle.
Most people don’t create
strong passwords or make sure
to maintain a different one for
every site. People create easy-
to-remember passwords and
typically use the same
passwords across all of their
accounts.
109. Browsers that don’t grok @supports ignore the block
Passwords can be a hassle.
Most people don’t create
strong passwords or make sure
to maintain a different one for
every site. People create easy-
to-remember passwords and
typically use the same
passwords across all of their
accounts.
110. Browsers that understand @supports, but don’t display grid ignore it
Passwords can be a hassle.
Most people don’t create
strong passwords or make sure
to maintain a different one for
every site. People create easy-
to-remember passwords and
typically use the same
passwords across all of their
accounts.
111. Browsers that understand @supports and grid apply it
Passwords can be a hassle.
Most people don’t create
strong passwords or make sure
to maintain a different one for
every site. People create easy-
to-remember passwords and
typically use the same
passwords across all of their
accounts.
147. var uiSettings = new Windows.UI
.ViewManagement
.UISettings();
var color = uiSettings
.getColorValue(
Windows.UI
.ViewManagement
.UIColorType
.background
);
if (color.r == 0 && color.g == 0
&& color.b == 0) {
// changes for Dark Mode
}
Detecting “dark mode”
148. if (window.Windows) {
var color = uiSettings
.getColorValue(
Windows.UI
.ViewManagement
.UIColorType
.background
);
if (color.r == 0 && color.g == 0
&& color.b == 0) {
// changes for Dark Mode
}
}
Detecting “dark mode”
149. if (window.Windows) {
var uiSettings = new Windows.UI
.ViewManagement
.UISettings();
if (color.r == 0 && color.g == 0
&& color.b == 0) {
// changes for Dark Mode
}
}
Detecting “dark mode”
150. if (window.Windows) {
var uiSettings = new Windows.UI
.ViewManagement
.UISettings();
var color = uiSettings
.getColorValue(
Windows.UI
.ViewManagement
.UIColorType
.background
);
}
Detecting “dark mode”