Improving The Accessibility of BMC FootPrints
Improving The Accessibility of BMC FootPrints
Improving The Accessibility of BMC FootPrints
To this:
(Notably, one of these menu options, Appearance, doesn’t exist and goes nowhere when
clicked. The accessibility of the site to screen readers might be increased, but if this
option adds fake menu options, how helpful is it?)
WAI-ARIA Attributes
WAI-ARIA is a standard put forward by the World Wide Web Consortium that serves to
define the ways that Web 2.0 applications should be designed to enable accessible
access. One subset of this standard is WAI-ARIA in HTML, which allows developers to
specify what the role (meaning “purpose” in this context) of an element on the page is.
For example, an HTML <button>element may be used to take a user to a new page (in
which case its role is link
) or it may be used to submit a form (in which case its role is
button ).
FootPrints has none of these attributes. For the sections outlined in red on the
screenshot of the FootPrints homepage on the first page, this is how the code could have
been rewritten to be more accessible:
There are numerous other problems with the way that these are designed, chiefly that
they use a lot of HTML tables to do their formatting123456, which can wreak havoc on the
site’s load time and accessibility. Almost all tables can be replaced with Semantic
elements (like I did with the div⇒ navconversion above) or with CSS display styles78.
(Perhaps most disturbingly, each row in the main table of information on the homepage is
itself a table. As in, every row in the table represents a table nested within another table.
It’s a semantic nightmare.)
Switching Workspaces
FootPrints allows for different IT teams to create silos for themselves so that they can
each manage their incoming requests through workflows specific to the department. For
many years, for example, Northwestern IT could transfer issues that Weinberg professors
were having with their computers into the Weinberg IT workspace so that Weinberg
could organize the issue as they saw fit and respond to the customer in whatever format
their protocol dictated, even if it was different from ours.
Figuring out how to switch to this workspace for the first time is next to impossible. Here
is the toggle that allows a user to switch workspaces:
It appears at the top right of the homepage and appears to simply be a line of text. It’s
small and unassuming, and even though the mouse pointer turns into the “grabbing
hand” when hovered over, this element otherwise has no properties that indicate that it is
interactive at all. When clicked, it transforms into this:
To be more accessible, the element should appear as a dropdown list at all times. As far
as I can tell, in its current form, this element is also inaccessible via keyboard navigation;
no matter how many times you press “Tab,” you will never select this toggle (or if you do,
it’s impossible to tell you’ve done it).
Letting this element remain an unstyled dropdown (like the one on the second
screenshot above) would allow the user to know when they’ve selected it if they’re using
keyboard navigation and it would also be a better indicator to all users that it is the
correct control to use to change workspaces, not just to display the current workspace.
The issue with these flags is that there is absolutely no indicator of what they mean, for
any kind of user. All it is is a purple bar with no tooltip information and no information for
screen readers. In the code, all that applies to these issues is border-bottom: 5px
purplewhich wouldn’t change the way that a screen reader parses the text at all.
<
style>
*
{
font-family : sans-serif ;
}
.
ticket{
display : inline-flex ;
flex-direction : column ;
}
.
ticket. indicator{
height :
5px ;
position : relative ;
}
.
ddca{
background-color : #993399 ;
}
.
ticket:hover. tooltip{
opacity : 1.0;
pointer-events :
auto ;
}
.
indicator. tooltip{
pointer-events :
none ;
opacity : 0;
transition : opacity 0.18s ease-out;
top: 1
50% ;
left: 0;
padding : 5px;
background-color : rgba (0
,
0, 0
, 0
.8);
border-radius :
5px;
position : absolute ;
white-space : nowrap;
color: white ;
font: 0.8ems ans-serif bold ;
}
</
style >
<
divclass =
"ticket" >
<
spanc lass ="
ticket-number" aria-describedby ="
tooltip-963313"
>
963313
</span>
<
spant itle ="
VIP Status: DDCA" class
=
"indicator ddca"id
="
flag-963313"
>
<d
ivclass ="tooltip"r ole =
"tooltip" id
="
tooltip-963313">
This ticket was submitted by a DDCA.
</
div>
<
/span>
</
div>
This solution allows for all users to easily glean what the indicator flag on a ticket actually
means. Screen readers will use the aria-describedbyattribute to find relevant
information to present about the indicator and other users can hover over the indicator to
see the tooltip that explains its meaning.
<
style>
a
{
text-decoration
: u
nderline !
important
;
}
</
style>
To make the text slightly more legible, we can also add the following:
<
style>
a
{
text-decoration
: u
nderline !
important
;
line-height
: 1
.2
;
}
</
style>
9
https://axesslab.com/practical-accessibility-improvements/
Keyboard Navigation
In addition to the issues with keyboard navigation listed in Switching Workspaces, there
is a lot to be desired for the site as a whole. There is no “Skip to content” control that can
jump to the site’s contents, and correspondingly, there is no element that effectively
describes the main content of the site. The information on the homepage should be
wrapped in <main>...</main>to indicate this.
It appears that, like many sites, FootPrints has removed the focus indicator from almost
every element on the page. When navigating through the document by keyboard, very
few elements stand out as they gain focus, and some of the ones that do change change
so imperceptibly as to be useless.
html>
body.ext-webkit*
:
focus{
o
utline-color
: r
gb
(7
7
, 1
44
,
254
)
!important
;
o
utline-offset
: -
2px
;
o
utline-style
: a
uto!
important
;
o
utline-width
: 5
px!
important
;
}
Then, the outlines appear again when navigating the site using the keyboard.