WebAIM - Web Accessibility In Mind

E-mail List Archives

Thread: Accessibility of dotNET


Number of posts in this thread: 2 (In chronological order)

From: Cohen, Lisa A.
Date: Wed, Apr 23 2003 8:58AM
Subject: Accessibility of dotNET
No previous message | Next message →

As an ASP developer who is just beginning to look at developing pages using
ASP.NET and C#, I am finding very little information on the accessibility of
the ASP.NET objects, which generate HTML. This HTML does not appear to be
fully accessible or 508 compliant (at least to me).
For example, it seems that SPAN and DIV tags are generated quite a bit, and
in places that prevent the use of LABEL tags for form controls. The SPAN
and DIV tags are also using absolute positioning. I've included an example
at the end of my note.
My question to this list: Has anyone found information about ASPdotNET
(regarding how to make it accessible) - other than the very little bit
offered on the MSDN website?


Lisa A. Cohen
Northrop Grumman Information Technology
1831 Wiehle Ave, Suite 300
Reston, VA 20190
(571) 203-6359
(703) 318-1098 (Fax)
Email: L. Cohen <mailto: = EMAIL ADDRESS REMOVED = >

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<meta name="GENERATOR" Content="Microsoft Visual Studio
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema"
<body MS_POSITIONING="GridLayout">
<form name="WebForm2_6" method="post"
action="StepByStep2_7.aspx" id="WebForm2_6">
<input type="hidden" name="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" value="" />
<input type="hidden" name="__VIEWSTATE"
value="dDwzNDM3ODEwNjM7Oz5GujKV/FiBoN18H/3k1eYp3wB5lg==" />

<script language="javascript">
function __doPostBack(eventTarget, eventArgument) {
var theform = document.WebForm2_6;
theform.__EVENTTARGET.value = eventTarget;
theform.__EVENTARGUMENT.value = eventArgument;
// -->

<span id="Label1"
style="font-family:Arial;font-size:Medium;width:278px;Z-INDEX: 101; LEFT:
8px; POSITION: absolute; TOP: 8px">Travel Expense Calculator</span>
<span id="Label3" style="width:143px;Z-INDEX: 106;
LEFT: 16px; POSITION: absolute; TOP: 80px">Number of days</span>
<div id="pnlDynamic"
style="height:21px;width:407px;Z-INDEX: 105; LEFT: 16px; POSITION: absolute;
TOP: 112px">
Travel Expense for Day-1 <input name="Expense1" type="text"
id="Expense1" /><br></br>Travel Expense for Day-2 <input name="Expense2"
type="text" id="Expense2" /><br></br>Travel Expense for Day-3 <input
name="Expense3" type="text" id="Expense3" /><br></br>Travel Expense for
Day-4 <input name="Expense4" type="text" id="Expense4" /><br></br>Travel
Expense for Day-5 <input name="Expense5" type="text" id="Expense5"
/><br></br><a href="javascript:__doPostBack('_ctl5','')">Submit
<select name="ddlDays" id="ddlDays"
onchange="__doPostBack('ddlDays','')" language="javascript"
style="width:39px;Z-INDEX: 104; LEFT: 176px; POSITION: absolute; TOP: 80px">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option selected="selected" value="5">5</option>

<span id="Label2" style="width:143px;Z-INDEX: 103;
LEFT: 15px; POSITION: absolute; TOP: 49px"> Associate Name</span>
<HR style="Z-INDEX: 102; LEFT: 8px; POSITION:
absolute; TOP: 34px" width="100%" SIZE="1">
<input name="txtName" type="text" id="txtName"
style="Z-INDEX: 107; LEFT: 176px; POSITION: absolute; TOP: 48px" />

To subscribe, unsubscribe, or view list archives,
visit http://www.webaim.org/discussion/

From: Derek Featherstone
Date: Thu, Apr 24 2003 7:27AM
Subject: RE: Accessibility of dotNET
← Previous message | No next message

> My question to this list: Has anyone found information about ASPdotNET
> (regarding how to make it accessible) - other than the very little bit
> offered on the MSDN website?

I can't say that I've really read too much of the MSDN reference material,
however here are some of my observations on what I've seen with ASP.NET:

1. As Joel mentioned, different HTML is delivered to different browsers. If
the user agent is a recent version of IE and client-side error checking is
enabled, then it will create code including client-side, JavaScript based
error checking. This is backed up with server-side checking for alternative
browsers (and presumably IE if JS is off).

2. With ASP.NET, client side checking can be either on or off. When it is
on, the .NET controls auto-generated code that allows for displaying error
messages instantly to the user. These error messages are in
<span>...</span>'s that are hidden from graphical browsers with visibility:
hidden or perhaps display: none. JAWS will read content that is visibility:
hidden, but not display: none. I don't recall if the ASP.NET generated code
uses visibility: hidden or display: none, but it has obvious implications
and testing would be required...

3. The <span>'s contained many attributes that are used to perform the
client-side error checking -- these attributes are not part of HTML, so if
they were to be included, it would appear that a custom DTD would be
required for ensuring that documents validate.

Derek Featherstone = EMAIL ADDRESS REMOVED =
Further Ahead Inc.
phone: 613.599.9784;
toll-free: 1.866.932.4878 (North America)
Web Development: http://www.furtherahead.com
Training and Learning: http://www.completelearning.com

To subscribe, unsubscribe, or view list archives,
visit http://www.webaim.org/discussion/