While speaking at the @media conference this year, Gez Lemon announced an easier way to understanding the new WCAG 2.0 requirements. They are meant to be technology neutral to allow future flexibility. Unfortunately, this also makes them difficult to understand. If you are only concerned about HTML, CSS, XML, or another format, use the WCAG 2.0 Quick Reference Guide to narrow the specifications to only those you are worried about.
@media and the WCAG2
I was waiting for the WCAG2 smack down at this week’s @media conference in London. The stage was set for some serious smack talk and WWF style-insults. Heck, Joe Clark was even mentioned at least a half dozen times.
But a surprising thing happened on stage. The presenters, Gez Lemon, Patrick Lauke, Andy Clarke, and Ian Lloyd didn’t explode in indignation. Rather, it was the opposite. The panel pulled out their hoses and began putting out the WCAG2 fires. The new guidelines are not perfect and nobody was close to agreeing to them. They are overly complicated and confusing. This was agreed upon.
However, they also seemed to agree that the guidelines were not going to bring the four horsemen of the apocalypse to the web developing community either. The guidelines are deliberately vague and technology-agnostic to allow for future growth. Gez Lemon pointed out a new part of the WCAG web site that allows you to print a condensed set of guidelines for your specific technology, i.e. XHTML, SMIL, CSS, etc.
On the other hand, the number of people in the room that had actually read the guidelines could be counted on two hands. Further, the number of people that had read not only the guidelines, but also the supporting documents could be counted on one hand doing a variety of gestures.
@Media and the state of web design
It was a bit of a surprise to see the less discussion web design at this year’s conference. The panels also discussed accessibility, web 2.0, microformats, DOM scripting, hand-held devices, CSS history, and internationalization. Dan Cederholm discussed his bulletproof web designs, Nate Koechly discussed contrasting design considerations for two Yahoo sites, and Andy Clarke discussed alternate inspirations for web design. There was also a great panel with Veerle Pieters, John Hicks, and Cameron Moll about good vs. great design.
At last year’s event, Joe Clark creating some buzz and inspiration with his impassioned plea for single-column zoom layouts. You could feel the energy as people began mentally designing their zoom layouts.
This year Clarke, as in Andy Clarke, set the stage for a renaissance in design. Why concentrate on grids when the result is the same old layout with a bit more perfection? Instead, he suggested we take that grid and start playing hops scotch with it. Make a practice grid and begin placing different shaped boxes until something comes together that is exciting and new.
He further showed how you could get layout inspiration from newspapers, photographs, and fliers. A Japanese newspaper’s layout looked the most foreign to my eyes, as well as many others. Vertical and horizontal sections seemed scattered around the page. Clarke super-imposed the grid onto the page and introduced us to a new method of laying out a page.
Header, left column, right column, footer… yawn. It’s easy, comfortable, and static. Clarke suggests breaking free of these standards and moving your content around the grid. Leave some open spage, add vertical bars and maybe even a framing device.
He further challenged us to abandon the concept of graceful degredation and move on to transcendental CSS design. Echoing the points of Nate Koechly’s essay on Yahoo’s Graded Browser Support Grid, Clarke suggested we begin coding for the best browsers. We need to use CSS2 and possibly CSS3 elements. IE5 may not look as good as Safari, but his gloss-black pinto with wrong-way flames isn’t going to impress the ladies as much as his Audi S4 convertible either. Do we continue to downgrade the experience for everyone? Or do we begin looking forward and push past today’s limits? The introduction of IE7 this year will hopefully solve much of the existing troubles and allow us to make this move guilt-free.
@media and Internet Explorer
Eric Meyer began the conference with a keynote about the history of CSS, HTML, web design, and browsers. He set the stage for Internet Explorer discussions that would span several presentations. Further, he placed faces to the browsers, introducing many people to Tantek Çelik who has been credited with the IE5 Mac goodness and Chris Wilson, who has been credited with the IE Windows goodness and badness.
It’s easy to look at the problems we have with IE6, an outdated browser, and accuse the Internet Explorer team of being a bunch of hacks who couldn’t code their way out of a garbage sack. Meyer reminded the older developers and taught the newer developers the history of the browser wars and how technically advanced IE6 was for its time. In its day, it was a great platform for accessibility and contemporary table-based web design.
Fortunately, we have moved beyond the table-based days and other browsers have replaced Internet Explorer as the technology leader. Microsoft is playing catch up and Chris Wilson came forward to pimp IE7. I also think many of the developers in the room will have a harder time kvetching about IE6, the broken browser from the behemoth beast of Redmond, after seeing an actual person on stage saying how proud he was to have worked on it. This geeky looking guy with a history of bad haircuts was also upset about the deadtime between IE6 and IE7 and promised to do his best to continue building better Internet Explorers in the future.
Wilson covered some of the required marketing points that most developers didn’t really care about. Security, blah, parental controls, blah, new controls, blah… better RSS support, blah… I actually think IE7 does a great job with RSS, but Wilson didn’t discuss this very much.
He did grab our attention with a new feature, OpenSearch. Developers can add a small metatag in the document head that will allow the user to add their site to the browser’s built in search bar. You can allow the user to search your site from a consistent location within the browser. I couldn’t tell if your site remained in the list of sites to search from permanently or only while it was being viewed. I’m going to look into the specs and try this as soon as possible.
Wilson also went over the list of bugs that have been fixed and took questions from people about future plans, backwards compatibility, and more. He didn’t come across as the super-friendly, super-smart, super-man like Tantek, the ex-Internet Explorer leader. But he did put a human face to what many people considered their enemy and this is a good thing for the future of web design.
Gez Lemon and Steve Faulkner have published an excellent description of how screen readers react to AJAX and what you can do to make your AJAX-powered pages more accessible. Making AJAX work with screen readers is a comprehensive description of the mechanics behind screen reader behavior, workarounds, and theory. Hats off to these programmers for laying out a clear description of the issue.
Sorry Jeffrey Zeldman for twisting your words, but they rang through my mind when I saw the latest missive from Joe Clark, the WCAG Samarai. Zeldman led the troops through the battle over standards guerrilla war against the browsers.
Now Joe is doffing his commanders uniform, I’m hoping it’s a rather smart one with sophisticated typography on the badge and non-leather jackboots. The Samarais will push, prod, and tease the WCAG into making accessibility an attainable goal.
Grab your katana.
The detour around flash for accessibility
Yahoo! Tech’s home page features a flash-based media space that highlights stories, comparisons, buying guides, blog posts, and more. Making this accessible required a bit of trial and error, but the solution was simple and can be used by sites everywhere.
Step 1. Inserting the flash object
Window Mode Transparency conflict
However, we had an issue with the flash movie conflicting with a DHTML drop down menu. The flash movie wanted to have the highest z-index and thus sat on top of the menu. To cure this problem, we added the attribute wmode:transparent. This tells the flash movie: your window mode is transparent, you are not the boss, go sit in the back and let others take center stage.
This cured the overlapping issues but negated the accessibility features that we had hoped for. User testing with a screen reader was disheartening. Screen readers ignore flash movies with window mode transparent. They want to do what’s best for the user and ignore the little guy in the back corner.
We began searching for answers on the flash and accessibility forums and couldn’t find a way to get screen readers to read a flash movie with wmode:transparent. It simply isn’t possible at this time.
Step 2. Time for a detour
The U.F.O. enabled page features a div with default text. This is where we originally duplicated the content being fed via xml to the flash movie. Our hope was that the screen readers would ignore the flash and read the HTML content in this div. When this wasn’t possible, we literally thought outside the box.
The U.F.O. script uses
visibility:hidden to hide the default box. We tried using text-indent and negative margins instead, but it still was not available to the screen reader.
The default div now has your standard non-optimized warning text: “For the best experience, please enable JavasScript and download the latest version of Flash….”
We then created a new div (id=”alternatecontent”) that features the content from the flash movie. It is pushed off screen by using absolute positioning. This hides the duplicated content from the visual design while providing the content to those without the visual abilities.
We’re satisfying two audiences with just a little extra code. Add the extra div for your screen reader audience (…and search engines!) when using wmode:transparent in your Flash movie. You’ll create valid, visually dynamic, and accessible pages.