-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Making the Cassiopeia template more accessible #68
Comments
In the current output of the template I see this structure: <body>
<div class="grid-child container-header full-width "><header></header></div>
<div class="grid-child container-top-a "><div class="top-a"></div></div>
<div class="grid-child container-component">
<div class="main-top"></div>
<div class="system-message"></div>
<nav class="navigation">BREADCRUMBS</nav>
<div class="COMPONENT AREA"></div>
</div>
<div class="grid-child container-sidebar-right">SIDEBAR MODULES</div>
<footer></footer>
</body> After reading your comment and as per my understanding we should use this structure: <body>
<header></header>
<aside>TOP-A</aside>
<main>
<nav class="navigation">BREADCRUMBS</nav>
MAIN_TOP
SYSTEM MESSAGES
COMPONENT
</main>
<aside>SIDEBAR MODULES</aside>
<footer></footer>
</body> Right? Is it correct to place breadcrumbs (as a nav menu) inside the main content? Also there are 2 very likely positions for menus. One called menu, which is included in the top right area (Header) and the other is as a sidebar module. |
Generally.
The most difficult problem is creating sections. There may be several modules in a section. You could build a section from a module, in which other modules will be embedded. |
Wouldn't it be better to add an input field for the section name in module parameters? This xould be easy. |
The programming can be solved differently. Of course, it can also be a new module (e.g. Section Module), which has additional parameters. |
Surely getting the admin ui accessible has a much higher priority for the beta release than a front end template that people wont be using (yes I do understand people will learn from it). @chmst and myself have been working alone on the admin for the last 12+ months and I know there is still a lot that can be improved etc before I would even look at the front end |
@brianteeman thank you very much for your insights. We are also working on backend template, but his template is also in our team goals. Stay safe and healthy!! |
copied from : https://www.w3.org/TR/wai-aria-practices/examples/landmarks/banner.html
My conclusion: there is no need to add the attribute Do you agree? |
copied from: https://www.w3.org/TR/wai-aria-practices/examples/landmarks/contentinfo.html
My conclusion: there is no need to add the attribute Do you agree? |
Small steps... I have created a PR to implement the UPDATEPR is merged in Joomla 4.0-dev |
Yes, I agree. there is no need to add the attribute |
When chosing Module Tag other than After that we can continue to adjust the sampledata plugin and set module_tags UPDATEPR is merged in Joomla 4.0-dev |
Intruduction
HTML 5 has provided new semantic tags that are used to organize the pages on website, such as:
header
,main
,footer
,aside
,nav
,section
,form
and a newrole
attribute (complementary
,conteninfo
,search
,region
, etc.).Over the past six years, rules have been very precisely defined for identifying key areas (landmarks) of the page using these new tags and the role attribute.
The use of these elements is particularly important for users of assistive technologies. For example, screen readers provide navigation through landmarks. It can be expected that such a function will also be implemented in modern browsers or that special plugins for browsers will be created (the Landmarks plugin for Chrome already exists).
Unfortunately, the default Joomla 4 template - Cassiopeia - did not apply these rules. As a result, the default template does not provide essential functionality for digital accessibility. It is also not a good design pattern for template creators.
Rules
main
role,main
area must be the top level area (landmark),banner
(header
tag; a page can have only one page header),banner
area (header
tag ) must be the top level area (landmark),contentinfo
role (footer
tag; a page can have only one page footer),contentinfo
area must be the top level area (landmark),nav
role,nav
area can be part of another area (landmark),complementary
role,complementary
areas must be top-level areas (landmarks)search
role,region
,A new structural element of the template is needed
Since there may be several areas on the page that serve as
role="complementary"
orrole="region"
, a new structural element of the template is needed. It is a container in which modules can be placed and which can be given an accessible name.It is best to define a new container using the
section
tag.It should be a container in which to place modules and to which you can give an accessible name. The accessible name can be hidden or explicit. The administrator should be able to specify both an explicit and a hidden name.
The explicit name should be the area header (at the
h2
level) with the identifier that should be pointed to by thearia-labelled
attribute of the section tag.The hidden name only for assistive technologies, should be the
aria-label
attribute added to the section tag.References
See:
The text was updated successfully, but these errors were encountered: