Learn More





DNN Community Blog

The Community Blog is a personal opinion of community members and by no means the official standpoint of DNN Corp or DNN Platform. This is a place to express personal thoughts about DNNPlatform, the community and its ecosystem. Do you have useful information that you would like to share with the DNN Community in a featured article or blog? If so, please contact .

The use of the Community Blog is covered by our Community Blog Guidelines - please read before commenting or posting.

Accessibility standards & xhtml compliance

Back in the early days of DotNetNuke (1.08 from memory), a community member came forward with the series of changes needed to make DotNetNuke ADA-508 compliant. These were merged into the codebase and for a couple of releases the core was fully compliant. Maintaining core compliance wasn't too difficult, as in those days the ability to change look and feel was relatively limited (you had to hack the files directly in most cases) 

With version 2.0 and the introduction of the rich skinning architecture, this compliance slipped a little. Over time as the modules became more powerful, and the portal more complex, we became less compliant with common accessibility standards. Whilst it was possible for skin designers and developers to create and release compliant sites (e.g. this and this describe 2 recent efforts), DotNetNuke didn't necessarily make it as easy as we would like. As a portal framework our aim is always to provide you with as much rich functionality as we can out of the box, but not to impact your efforts to create websites and applications exactly as you intended.

This is an area we've been wanting to revisit, and recently I've been scoping out requirements for this, prior to it being added as an official roadmap item. Due to the degree of interest, I thought it best to blog briefly about it whilst the scope is finalised. I've done this in a series of  Q&A points that hopefully address the main queries.

Q. Are you going to create a version of DotNetNuke that is ADA/WCAG/XHTML compliant?

A. Frequently accessibility standards, xhtml and css based skins are all lumped together as the same thing, but whilst theres a large degree of cross-over, they're not an exact match e.g. you can have a site that passes common accessibility criteria without being xhtml compliant. The key deliverable for this roadmap item is to try and ensure that out of the box DotNetNuke can pass common accessibility standards such as W3C WAI Level A, and ADA 508 (as this either is, or soon will be a legal requirement in many countries or for particular sites e.g. Government/Council sites). During this work, where possible efforts will be made to alter markup to be xhtml compliant, but Accessibility compliance will have priority.


Q. Will upgrading to this new version make my site look different?

A. No. One of the aims is to make this a non-breaking change with regards look and feel. In cases where we need to alter hardcoded values, we will add enhancements that default to the current values but allow the value to be overriden i.e. DotNetNuke has a fixed DOCTYPE on default.aspx. Altering this would effect look and feel, so we will add an enhancement to allow skin DOCTYPE to be altered e.g. through a skin level setting either on the ascx or in the skin.xml


Q. Will these changes be for both 3.x and 4.x.

A. Ideally yes. Sadly, 1.1 emitts invalid markup in many cases, making it much more difficult to create compliant sites (whereas 2.0 can emit xhtml), but we will try to update both code bases equally.


Q. What release are we likely to start seeing changes in?
A. They've already started in some cases e.g in 4.3 some of the uppercase HEAD and LINK tags were changed to using the 2.0 control equivalents (which emit valid html). There are a number of projects that will help with the efforts including the new menu provider that's xhtml compliant, as well as an official release of the xhtml compatible FCKeditor provider. The next release of DotNetNuke will be a stability release, expect to see most of the changes in a release after that.


Q. Will you be fixing the core modules too?

A. The modules are the responsibility of their own project teams, but we'll certainly be offering suggestions/advice/code fixes and encouraging them to incorporate them.


Q. Do you have a list of items potentially in scope?

A. The full scope hasn't been defined yet, but you can expect to see some of the following

  • Utilising some of the accessibility support in
  • adopting some of the recommendations from the MS guidelines
  • removing any barriers for entry (e.g. hardcoded non-compliant html or replacing linkbuttons where possible with non-postback methods)
  • addition of access keys at the page level and a way to easily expose a list of these to screen readers (e.g. via an ACCESSKEYS skinobject)


Comment Form

Only registered users may post comments.


2sic Daniel Mettler (125)
Aderson Oliveira (15)
Alec Whittington (11)
Alex Shirley (10)
Andrew Nurse (30)
Anthony Glenwright (5)
Antonio Chagoury (28)
Ash Prasad (22)
Ben Schmidt (1)
Benjamin Hermann (25)
Benoit Sarton (9)
Beth Firebaugh (12)
Bill Walker (36)
Bob Kruger (5)
Brian Dukes (2)
Brice Snow (1)
Bruce Chapman (20)
Bryan Andrews (1)
cathal connolly (55)
Charles Nurse (163)
Chris Hammond (203)
Chris Paterra (55)
Clinton Patterson (28)
Cuong Dang (21)
Daniel Bartholomew (2)
Dave Buckner (2)
David Poindexter (3)
David Rodriguez (2)
Doug Howell (11)
Erik van Ballegoij (30)
Ernst Peter Tamminga (74)
Geoff Barlow (6)
Gifford Watkins (3)
Gilles Le Pigocher (3)
Ian Robinson (7)
Israel Martinez (17)
Jan Blomquist (2)
Jan Jonas (3)
Jaspreet Bhatia (1)
Jenni Merrifield (6)
Joe Brinkman (270)
John Mitchell (1)
Jon Henning (14)
Jonathan Sheely (4)
Jordan Coopersmith (1)
Joseph Craig (2)
Kan Ma (1)
Keivan Beigi (3)
Ken Grierson (10)
Kevin Schreiner (6)
Leigh Pointer (31)
Lorraine Young (60)
Malik Khan (1)
Matthias Schlomann (15)
Mauricio Márquez (5)
Michael Doxsey (7)
Michael Tobisch (3)
Michael Washington (202)
Mike Horton (19)
Mitchel Sellers (28)
Nathan Rover (3)
Navin V Nagiah (14)
Néstor Sánchez (31)
Nik Kalyani (14)
Peter Donker (52)
Philip Beadle (135)
Philipp Becker (4)
Richard Dumas (22)
Robert J Collins (5)
Roger Selwyn (8)
Ruben Lopez (1)
Ryan Martinez (1)
Salar Golestanian (4)
Sanjay Mehrotra (9)
Scott McCulloch (1)
Scott S (11)
Scott Wilkinson (3)
Scott Willhite (97)
Sebastian Leupold (80)
Shaun Walker (237)
Shawn Mehaffie (17)
Stefan Cullmann (12)
Stefan Kamphuis (12)
Steve Fabian (31)
Timo Breumelhof (24)
Tony Henrich (3)
Torsten Weggen (2)
Vicenç Masanas (27)
Vincent Nguyen (3)
Vitaly Kozadayev (6)
Will Morgenweck (37)
Will Strohl (163)
William Severance (5)
Try Evoq
For Free
Start Free Trial
a Demo
See Evoq Live
Need More Information?