
<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom"
     xmlns:dc="http://purl.org/dc/elements/1.1/"
     xmlns:content="http://purl.org/rss/1.0/modules/content/"
     version="2.0">
<channel>

<title>Max Design articles</title>
<description>Browser internals, accessibility, ARIA, HTML and CSS articles</description>
<link>https://www.maxdesign.com.au/articles/</link>
<language>en-au</language>
<lastBuildDate>Sunday, 16 August 2026 17:35:00 +1000</lastBuildDate>
<pubDate>Sunday, 16 August 2026 17:35:00 +1000</pubDate>

<atom:link href="https://www.maxdesign.com.au/feed.xml"
           rel="self"
           type="application/rss+xml"/>

<image>
  <url>https://www.maxdesign.com.au/apple-touch-icon-precomposed.png</url>
  <title>Max Design articles</title>
  <link>https://www.maxdesign.com.au/articles/</link>
</image>


<!--  =========================================================  -->
<!--  1. Understanding aria-pressed                                -->
<!--  =========================================================  -->
<item>
<title>Understanding aria-pressed</title>
<link>https://www.maxdesign.com.au/articles/aria-pressed-explained.html</link>
<guid isPermaLink="true">https://www.maxdesign.com.au/articles/aria-pressed-explained.html</guid>
<pubDate>Sun, 16 Aug 2026 09:00:30 +1000</pubDate>
<dc:creator>Russ Weakley</dc:creator>
<category>HTML</category>
<category>Accessibility</category>
<description>A quick explanation of aria-pressed - including an example, when it can be used, and when it should not be used.</description>
<content:encoded>
<![CDATA[
<p>A quick explanation of aria-pressed - including an example, when it can be used, and when it should not be used.</p>
<p><a href="https://www.maxdesign.com.au/articles/aria-pressed-explained.html">Read the full article</a></p>
]]>
</content:encoded>
</item>


<!--  =========================================================  -->
<!--  2. Understanding aria-valuemin and aria-valuemax            -->
<!--  =========================================================  -->
<item>
<title>Understanding aria-valuemin and aria-valuemax</title>
<link>https://www.maxdesign.com.au/articles/aria-valuemin-valuemax-explained.html</link>
<guid isPermaLink="true">https://www.maxdesign.com.au/articles/aria-valuemin-valuemax-explained.html</guid>
<pubDate>Sun, 16 Aug 2026 09:00:30 +1000</pubDate>
<dc:creator>Russ Weakley</dc:creator>
<category>HTML</category>
<category>Accessibility</category>
<description>This article explains aria-valuemin and aria-valuemax in plain language. It shows how assistive technology can understand the boundaries of a range control.</description>
<content:encoded>
<![CDATA[
<p>This article explains aria-valuemin and aria-valuemax in plain language. It shows how assistive technology can understand the boundaries of a range control.</p>
<p><a href="https://www.maxdesign.com.au/articles/aria-valuemin-valuemax-explained.html">Read the full article</a></p>
]]>
</content:encoded>
</item>


<!--  =========================================================  -->
<!--  3. Understanding aria-valuetext                             -->
<!--  =========================================================  -->
<item>
<title>Understanding aria-valuetext</title>
<link>https://www.maxdesign.com.au/articles/aria-valuetext-explained.html</link>
<guid isPermaLink="true">https://www.maxdesign.com.au/articles/aria-valuetext-explained.html</guid>
<pubDate>Sat, 15 Aug 2026 09:00:30 +1000</pubDate>
<dc:creator>Russ Weakley</dc:creator>
<category>HTML</category>
<category>Accessibility</category>
<description>This article explains aria-valuetext in plain language, building on aria-valuenow to show how a numeric value can be given a more useful text description for assistive technology.</description>
<content:encoded>
<![CDATA[
<p>This article explains aria-valuetext in plain language, building on aria-valuenow to show how a numeric value can be given a more useful text description for assistive technology.</p>
<p><a href="https://www.maxdesign.com.au/articles/aria-valuetext-explained.html">Read the full article</a></p>
]]>
</content:encoded>
</item>


<!--  =========================================================  -->
<!--  4. Understanding aria-valuenow                              -->
<!--  =========================================================  -->
<item>
<title>Understanding aria-valuenow</title>
<link>https://www.maxdesign.com.au/articles/aria-valuenow-explained.html</link>
<guid isPermaLink="true">https://www.maxdesign.com.au/articles/aria-valuenow-explained.html</guid>
<pubDate>Fri, 14 Aug 2026 09:00:30 +1000</pubDate>
<dc:creator>Russ Weakley</dc:creator>
<category>HTML</category>
<category>Accessibility</category>
<description>This article explains aria-valuenow in plain language, starting with a familiar native range input and then showing what changes when developers build their own custom slider.</description>
<content:encoded>
<![CDATA[
<p>This article explains aria-valuenow in plain language, starting with a familiar native range input and then showing what changes when developers build their own custom slider.</p>
<p><a href="https://www.maxdesign.com.au/articles/aria-valuenow-explained.html">Read the full article</a></p>
]]>
</content:encoded>
</item>


<!--  =========================================================  -->
<!--  5. Understanding aria-details                               -->
<!--  =========================================================  -->
<item>
<title>Understanding aria-details</title>
<link>https://www.maxdesign.com.au/articles/aria-details-explained.html</link>
<guid isPermaLink="true">https://www.maxdesign.com.au/articles/aria-details-explained.html</guid>
<pubDate>Thu, 13 Aug 2026 09:00:30 +1000</pubDate>
<dc:creator>Russ Weakley</dc:creator>
<category>HTML</category>
<category>Accessibility</category>
<description>This article explains aria-details in plain language, showing how it connects elements on a page to additional content, how that content is exposed to screen reader users, and how it differs from aria-describedby.</description>
<content:encoded>
<![CDATA[
<p>This article explains aria-details in plain language, showing how it connects elements on a page to additional content, how that content is exposed to screen reader users, and how it differs from aria-describedby.</p>
<p><a href="https://www.maxdesign.com.au/articles/aria-details-explained.html">Read the full article</a></p>
]]>
</content:encoded>
</item>


<!--  =========================================================  -->
<!--  6. Understanding aria-roledescription                       -->
<!--  =========================================================  -->
<item>
<title>Understanding aria-roledescription</title>
<link>https://www.maxdesign.com.au/articles/aria-roledescription-explained.html</link>
<guid isPermaLink="true">https://www.maxdesign.com.au/articles/aria-roledescription-explained.html</guid>
<pubDate>Wed, 12 Aug 2026 09:00:30 +1000</pubDate>
<dc:creator>Russ Weakley</dc:creator>
<category>HTML</category>
<category>Accessibility</category>
<description>This article explains aria-roledescription in plain language, starting with how native and ARIA roles work, then showing how it can override how a role is announced, without creating a new role.</description>
<content:encoded>
<![CDATA[
<p>This article explains aria-roledescription in plain language, starting with how native and ARIA roles work, then showing how it can override how a role is announced, without creating a new role.</p>
<p><a href="https://www.maxdesign.com.au/articles/aria-roledescription-explained.html">Read the full article</a></p>
]]>
</content:encoded>
</item>


<!--  =========================================================  -->
<!--  7. Understanding aria-activedescendant                      -->
<!--  =========================================================  -->
<item>
<title>Understanding aria-activedescendant</title>
<link>https://www.maxdesign.com.au/articles/aria-activedescendant-explained.html</link>
<guid isPermaLink="true">https://www.maxdesign.com.au/articles/aria-activedescendant-explained.html</guid>
<pubDate>Tue, 11 Aug 2026 09:00:30 +1000</pubDate>
<dc:creator>Russ Weakley</dc:creator>
<category>HTML</category>
<category>Accessibility</category>
<description>This article explains aria-activedescendant in plain language, starting with a familiar native select and then showing what changes when developers build their own custom version.</description>
<content:encoded>
<![CDATA[
<p>This article explains aria-activedescendant in plain language, starting with a familiar native select and then showing what changes when developers build their own custom version.</p>
<p><a href="https://www.maxdesign.com.au/articles/aria-activedescendant-explained.html">Read the full article</a></p>
]]>
</content:encoded>
</item>


<!--  =========================================================  -->
<!--  8. A bookmarklet highlighting mismatches between the visible label and accessible name  -->
<!--  =========================================================  -->
<item>
<title>A bookmarklet highlighting mismatches between the visible label and accessible name</title>
<link>https://www.maxdesign.com.au/articles/mismatch-bookmarklet.html</link>
<guid isPermaLink="true">https://www.maxdesign.com.au/articles/mismatch-bookmarklet.html</guid>
<pubDate>Mon, 08 Jun 2026 09:00:30 +1000</pubDate>
<dc:creator>Russ Weakley</dc:creator>
<category>HTML</category>
<category>Accessibility</category>
<description>A bookmarklet that highlights accessible names for links that match, partially match or mismatch.</description>
<content:encoded>
<![CDATA[
<p>A bookmarklet that highlights accessible names for links that match, partially match or mismatch.</p>
]]>
</content:encoded>
</item>


<!--  =========================================================  -->
<!--  9. A bookmarklet highlighting roles that must never have author-provided names  -->
<!--  =========================================================  -->
<item>
<title>A bookmarklet highlighting roles that must never have author-provided names</title>
<link>https://www.maxdesign.com.au/articles/name-bookmarklet.html</link>
<guid isPermaLink="true">https://www.maxdesign.com.au/articles/name-bookmarklet.html</guid>
<pubDate>Sun, 07 Jun 2026 13:10:30 +1000</pubDate>
<dc:creator>Russ Weakley</dc:creator>
<category>HTML</category>
<category>Accessibility</category>
<description>This bookmarklet highlights elements with name-prohibited roles.</description>
<content:encoded>
<![CDATA[
<p>A bookmarklet that highlights ARIA roles where author-provided accessible names are forbidden. A practical way to find naming errors and better understand ARIA naming rules.</p>
]]>
</content:encoded>
</item>


<!--  =========================================================  -->
<!--  10. Using the browser console for accessibility testing - Part 2  -->
<!--  =========================================================  -->
<item>
<title>Using the browser console for accessibility testing - Part 2</title>
<link>https://www.maxdesign.com.au/articles/console2.html</link>
<guid isPermaLink="true">https://www.maxdesign.com.au/articles/console2.html</guid>
<pubDate>Sunday, 07 June 2026 10:20:30 +1000</pubDate>
<dc:creator>Russ Weakley</dc:creator>
<category>HTML</category>
<category>Accessibility</category>
<description>Learn how to use browser console scripts to test aria-invalid, aria-hidden, aria-expanded, tabindex, accessible names, required fields and name-prohibited roles.</description>
<content:encoded>
<![CDATA[
<p>Build on browser-based accessibility testing techniques using the console. This article explores additional JavaScript snippets that help inspect accessible names, descriptions, roles, states and properties directly in the browser.</p>
]]>
</content:encoded>
</item>

</channel>
</rss>
