This course has professional captions (subtitles) for all lectures.
Are you a front-end developer struggling with ARIA? Is the ARIA spec too technical and confusing? Are most online resources on ARIA outdated, and lacking in practical examples?
Meet Stefany, your new ARIA teacher.
In Stefany’s “Introduction to ARIA for Beginners” course, you will learn the basics of ARIA with easy to understand code, and real life examples.
Stefany will start with the very basicssuch as what ARIA is, when to use it, and common mistakes beginners make.
This course has professional captions (subtitles) for all lectures.
Are you a front-end developer struggling with ARIA? Is the ARIA spec too technical and confusing? Are most online resources on ARIA outdated, and lacking in practical examples?
Meet Stefany, your new ARIA teacher.
In Stefany’s “Introduction to ARIA for Beginners” course, you will learn the basics of ARIA with easy to understand code, and real life examples.
Stefany will start with the very basicssuch as what ARIA is, when to use it, and common mistakes beginners make.
Further in the course, she will explain how to use ARIA landmarks to structure your website.
Following that, she will demonstrate how screen readers interact with ARIA.
Finally, Stefany will teach you the basics of ARIA states, roles, and properties in an easy to understand way.
In addition, this course contains helpful quizzes along the way in order to test your knowledge.
At the end of the course, Stefany will show you how to build real life widgets with the knowledge you learned.
Enroll today and get a 30-Day Money-Back Guarantee.
Are you ready to begin your journey with WAI-ARIA? Start here.
Students are encouraged to contact the instructor with any guideline questions for fully fledged help and course support.
WAI-ARIA, the Accessible Rich Internet Applications Suite, defines a way to make Web content and Web applications more accessible to people with disabilities. It especially helps with dynamic content and advanced user interface controls developed with HTML, JavaScript, and related technologies. In this lecture, we will discuss ARIA and some of the main types of attributes while providing practical examples.
In this lecture, we will discuss the main situations in which ARIA is good to use--such as with signposts/landmarks, dynamic content updates, to enhancing keyboard accessibility, and to increase the accessibility of non-semantic controls.
Many HTML elements have an accessible name. The accessible name for a HTML element is exposed in the browser’s accessibility tree. It is the piece of information used by Assistive Technologies (AT) to identify the element. The accessible name for an element can be derived from the element’s content, an attribute, or from an associated element. In this lecture, we will discuss what accessible names are, how to find them, and how to create them.
Testing your basic ARIA knowledge.
ARIA landmarks are attributes you add to elements to create semantically defined sections of a page that allow users of assistive technologies to navigate the page more easily. Think of ARIA landmarks as building a set of “skip to” links like “skip to main content”. In this lecture, we will discuss what landmarks are, explore practical examples, and provide landmark coding information.
A banner landmark identifies site-oriented content at the beginning of each page within a website and a contentinfo landmark is a way to identify common information at the bottom of each page within a website, typically called the "footer" of the page, including information such as copyrights and links to privacy and accessibility statements. In this quick lecture, we will look at banner and contentinfo examples and explore the code for both.
Navigation landmarks provide a way to identify groups (e.g. lists) of links that are intended to be used for website or page content navigation. In this lecture, we will explore the code, best creation practices, and look at examples of navigation landmarks.
The main landmark contains what is between the header and footer of a webpage. The complementary landmark role is used to designate a supporting section that relates to the main content, yet can stand alone when separated. These sections are frequently presented as sidebars or call-out boxes. In this quick lecture, we will discuss these landmarks and how they relate to each other, and look at the code for both.
The form landmark role can be used to identify a group of elements on a page that provide equivalent functionality to an HTML form. This is a form that collects and saves a user's contact information. The search landmark role is used to identify a section of the page used to search the page, site, or collection of sites. In this quick lecture, we will have a look at both and explore the code.
A region landmark is a perceivable section containing content that is relevant to a specific, author-specified purpose and sufficiently important that users will likely want to be able to navigate to the section easily and to have it listed in a summary of the page. In this lecture, we will discuss the region landmark and provide examples and code.
Testing your knowledge on ARIA landmarks.
ARIA defines semantics that can be applied to elements, with these divided into roles (defining a type of user interface element) and states and properties that are supported by a role. Authors must assign an ARIA role and the appropriate states and properties to an element during its life-cycle, unless the element already has appropriate ARIA semantics (via use of an appropriate HTML element). In this lecture, we will discuss what ARIA roles, states, and properties are in depth and provide practical examples.
The button role should be used for clickable elements that trigger a response when activated by the user. Adding role="button" will make an element appear as a button control to a screen reader. This role can be used in combination with the aria-pressed attribute to create toggle buttons. In this lecture, we will discuss the button role and its purpose, while providing practical examples and code.
The aria-label attribute is used to define a string that labels the current element. Use it in cases where a text label is not visible on the screen. If there is visible text labeling the element, use the aria-labelledby attribute instead. In this lecture, we will discuss the aria-label attribute and provide practical examples and code.
The aria-labelledby attribute establishes relationships between objects and their label(s), and its value should be one or more element IDs, which refer to elements that have the text needed for labeling. In this lecture, we will discuss what aria-labelledby is and when it's used, while providing practical examples and code.
The aria-describedby attribute is used to indicate the IDs of the elements that describe the object. It is used to establish a relationship between widgets or groups and text that described them. This is very similar to aria-labelledby: a label describes the essence of an object, while a description provides more information that the user might need. In this lecture, we will discuss aria-describedby and provide practical examples and code in order to better understand its functions.
aria‑label, aria‑labelledby, and aria‑describedby can all be used to bring extra clarity to a given element when it's exposed to assistive technology.
aria‑label overrides an element's name with contents you specify.
aria‑labelledby replaces an element's name with contents from another node on the page. You'd use this when you already have a visible label anyways.
aria‑describedby sets your element's description to the contents of another node on the page. This is great for noncritical, supplemental information.
In this lecture, we will discuss the differences among the functions of these three ARIA attributes with practical examples.
The aria-hidden attribute can either expose or hide non-interactive content from the accessibility API. In this lecture, we will discuss what aria-hidden is, while providing practical examples and code to better understand its functions.
The presentation role is used to remove semantic meaning from an element and any of its related child elements. Presentational roles are used when elements need to be in the DOM, but the semantics of them are inaccurate or unnecessary. We’re basically telling a screen reader that the semantics of an element are wrong, so ignore them. In this lecture, we will explore and discuss the presentation role with practical examples and code.
The aria-required attribute is used to indicate that user input is required on an element before a form can be submitted. This attribute can be used with any typical HTML form element; it is not limited to elements that have an ARIA role assigned. In this lecture, we will explore the aria required attribute with practical examples and code.
The aria-expanded attribute provides information about whether an element is in an expanded or collapsed state. For example, if you have a collapsible element which contains a text, then a screen reader would know that the text is not currently displayed on the screen when the aria-expanded attribute is set to true. In this lecture, we will discuss and explore the aria-expanded attribute, while providing practical examples and code.
The hamburger menu or hamburger icon is a name given to the menu icon found in newer programs and websites that hides the traditional file menu. Using the hamburger menu makes it easier to view program options on mobile devices, but this often comes at the cost of accessibility. In this lecture, we will explore the step by step procedure used to code an accessible hamburger menu using ARIA.
Congratulations on completing the course and thank you so much for taking the initiative to learn about web accessibility! If you'd like to learn more and interact with me and other web accessibility developers and students, I highly encourage you to join my web accessibility Facebook group and/or Discord server. See you there!
Web Accessibility Education Facebook Group:
https://www.facebook.com/groups/webaccessibilityeducation
Web Accessibility Education Discord: https://discord.com/channels/682250650003701773/682250653414064150
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.