SlideShare a Scribd company logo
1 of 30
Avoiding common
                          Accessibility mistakes
                                  think visibility 2009
                                      Dirk Ginader
                                   http://ginader.com
                               http://twitter.com/ginader




Saturday, March 7, 2009
You know SEO?
                           Helps a LOT!


Saturday, March 7, 2009
• easily understandable valuable content
                     • semantically rich markup
                     • the >right< semantic markup (if you think
                          you found a wicket cool new use for a
                          definition list - think again...)




Saturday, March 7, 2009
• good “speaking” URLs
                     • Link-texts that make sense by themselves
                     • valuable alternative texts on Images


Saturday, March 7, 2009
You know Usability?
       Accessibility === Usability!
        except it’s for everyone...


Saturday, March 7, 2009
• use the tab and enter key only
                          - can you navigate your site?

                     • disable Javascript
                          - are you still able to do everything?

                     • zoom the page in the Browser (yes IE6 too)
                          does the Layout still work?




Saturday, March 7, 2009
• zoom the screen
                          are you able to realize all the changes?

                     • close your eyes
                          ...




Saturday, March 7, 2009
You know CSS?



Saturday, March 7, 2009
• using CSS is great for accessibility - right?
                     • yeah...
                     • ... not necessarily


Saturday, March 7, 2009
No I will not preach
                           <table> Layout ;-)


Saturday, March 7, 2009
Sorry...



Saturday, March 7, 2009
• used in the wrong way CSS can reduce
                          accessibility

                     • display:none and visibility:hidden
                          hide content - also from Screenreaders

                     • does your hidden content show up
                          on :focus or only on :hover?

                     • CSS only Dropdown Navigation is a misuse!
                          CSS is for design. Javascript is for behavior.


Saturday, March 7, 2009
You know Javascript?



Saturday, March 7, 2009
• it’s evil - right?
                     • nope...
                     • ... not necessarily


Saturday, March 7, 2009
• used correctly, Javascript is not only nicely
                          accessible but can even enhance accessibility

                     • subtile animations can make otherwise
                          confusing workflows easier to understand
                          (subtile! Or motion sickness kicks in...)

                     • hiding currently unused elements and
                          highlighting the important ones can make
                          your layout appear far less complex


Saturday, March 7, 2009
• progressively enhance the default non-js
                          layout and hijack the existing controls to do
                          their job in the browser instead on the
                          server

                     • create new interaction elements, that offer
                          functionality only available with Javascript,
                          by Javascript and make sure they are tab-
                          able

                     • don’t break the natural tab order by setting
                          a positive tab index. A tab index of 0 can
                          make non tab-able elements accessible too!
Saturday, March 7, 2009
Screenreaders don’t
                          understand Javascript
                               anyway...


Saturday, March 7, 2009
• is there still someone believing that?
                     • most Screenreaders actually handle
                          Javascript very well!

                     • they just don’t know if you don’t tell them


Saturday, March 7, 2009
• inform Screenreaders about what’s
                          happening

                     • a logic and understandable workflow is the
                          easiest thing to test without a Screenreader

                     • focus() the next logical element

Saturday, March 7, 2009
Examples



Saturday, March 7, 2009
without Javascript




                           http://finance.yahoo.com/currency-converter
Saturday, March 7, 2009
without Javascript




                           http://finance.yahoo.com/currency-converter
Saturday, March 7, 2009
without Javascript




                           http://finance.yahoo.com/currency-converter
Saturday, March 7, 2009
with Javascript




                          http://finance.yahoo.com/currency-converter
Saturday, March 7, 2009
with Javascript




                          http://finance.yahoo.com/currency-converter
Saturday, March 7, 2009
with Javascript




                          http://finance.yahoo.com/currency-converter
Saturday, March 7, 2009
http://uk.tv.yahoo.com/

Saturday, March 7, 2009
More Examples

                     • http://icant.co.uk/easy-youtube
                     • http://blog.ginader.de/archives/2009/02/07/
                          jQuery-Accessible-Tabs-How-to-make-
                          tabs-REALLY-accessible.php
                     • http://www.accessibilitytips.com

Saturday, March 7, 2009
For more geeky tech details see you at Geekup Leeds 15.04.2009




                              http://ginader.com
                          http://twitter.com/ginader
Saturday, March 7, 2009
More Details?
                          Geekup Leeds
                              15.04.2009




Saturday, March 7, 2009

More Related Content

What's hot

Progressing JavaScript and Apps the Web way…
 Progressing JavaScript and Apps the Web way…  Progressing JavaScript and Apps the Web way…
Progressing JavaScript and Apps the Web way… Christian Heilmann
 
Let’s learn how to use JavaScript responsibly and stay up-to-date.
Let’s learn how to use JavaScript responsibly and stay up-to-date. Let’s learn how to use JavaScript responsibly and stay up-to-date.
Let’s learn how to use JavaScript responsibly and stay up-to-date. Christian Heilmann
 
Prawn: Creating PDF in Ruby
Prawn: Creating PDF in RubyPrawn: Creating PDF in Ruby
Prawn: Creating PDF in RubyTom Klaasen
 
Cache Money Business
Cache Money BusinessCache Money Business
Cache Money BusinessMark Jaquith
 
บรรณานุกรม
บรรณานุกรมบรรณานุกรม
บรรณานุกรมIShadow' Leo'os
 
How to get a serious front end designer job
How to get a serious front end designer jobHow to get a serious front end designer job
How to get a serious front end designer jobKarlis Upitis
 
Conclusion Of The Course
Conclusion Of The CourseConclusion Of The Course
Conclusion Of The CourseReema
 
Keeping lab notes as a software developer
Keeping lab notes as a software developerKeeping lab notes as a software developer
Keeping lab notes as a software developerJames McKay
 
Confessions of a Procrastinator
Confessions of a ProcrastinatorConfessions of a Procrastinator
Confessions of a Procrastinatorcoachdirk
 
Ruby Nuby Session - Rails Intro
Ruby Nuby Session - Rails IntroRuby Nuby Session - Rails Intro
Ruby Nuby Session - Rails IntroJohn Barton
 
Don’t get Bootslapped: How to Avoid Common Pitfalls with CSS Frameworks
Don’t get Bootslapped: How to Avoid Common Pitfalls with CSS FrameworksDon’t get Bootslapped: How to Avoid Common Pitfalls with CSS Frameworks
Don’t get Bootslapped: How to Avoid Common Pitfalls with CSS FrameworksWebVisions
 
The art of website layout
The art of website layoutThe art of website layout
The art of website layoutmilika866666
 
4 EASY STEPS TO GETTING ONLINE BEFORE LUNCH
4 EASY STEPS TO GETTING ONLINE BEFORE LUNCH4 EASY STEPS TO GETTING ONLINE BEFORE LUNCH
4 EASY STEPS TO GETTING ONLINE BEFORE LUNCHKieran Daly
 

What's hot (20)

Having Fun with Local WordPress Development
Having Fun with Local WordPress DevelopmentHaving Fun with Local WordPress Development
Having Fun with Local WordPress Development
 
Progressing JavaScript and Apps the Web way…
 Progressing JavaScript and Apps the Web way…  Progressing JavaScript and Apps the Web way…
Progressing JavaScript and Apps the Web way…
 
How to manage your web agency as a client
How to manage your web agency as a clientHow to manage your web agency as a client
How to manage your web agency as a client
 
MailXpert API bundle
MailXpert API bundleMailXpert API bundle
MailXpert API bundle
 
Let’s learn how to use JavaScript responsibly and stay up-to-date.
Let’s learn how to use JavaScript responsibly and stay up-to-date. Let’s learn how to use JavaScript responsibly and stay up-to-date.
Let’s learn how to use JavaScript responsibly and stay up-to-date.
 
Prawn: Creating PDF in Ruby
Prawn: Creating PDF in RubyPrawn: Creating PDF in Ruby
Prawn: Creating PDF in Ruby
 
Asynchrony on the web
Asynchrony on the webAsynchrony on the web
Asynchrony on the web
 
Cache Money Business
Cache Money BusinessCache Money Business
Cache Money Business
 
บรรณานุกรม
บรรณานุกรมบรรณานุกรม
บรรณานุกรม
 
How to get a serious front end designer job
How to get a serious front end designer jobHow to get a serious front end designer job
How to get a serious front end designer job
 
Conclusion Of The Course
Conclusion Of The CourseConclusion Of The Course
Conclusion Of The Course
 
Keeping lab notes as a software developer
Keeping lab notes as a software developerKeeping lab notes as a software developer
Keeping lab notes as a software developer
 
Confessions of a Procrastinator
Confessions of a ProcrastinatorConfessions of a Procrastinator
Confessions of a Procrastinator
 
Ruby Nuby Session - Rails Intro
Ruby Nuby Session - Rails IntroRuby Nuby Session - Rails Intro
Ruby Nuby Session - Rails Intro
 
Responsive Design
Responsive DesignResponsive Design
Responsive Design
 
Functional javascript
Functional javascriptFunctional javascript
Functional javascript
 
Don’t get Bootslapped: How to Avoid Common Pitfalls with CSS Frameworks
Don’t get Bootslapped: How to Avoid Common Pitfalls with CSS FrameworksDon’t get Bootslapped: How to Avoid Common Pitfalls with CSS Frameworks
Don’t get Bootslapped: How to Avoid Common Pitfalls with CSS Frameworks
 
The art of website layout
The art of website layoutThe art of website layout
The art of website layout
 
4 EASY STEPS TO GETTING ONLINE BEFORE LUNCH
4 EASY STEPS TO GETTING ONLINE BEFORE LUNCH4 EASY STEPS TO GETTING ONLINE BEFORE LUNCH
4 EASY STEPS TO GETTING ONLINE BEFORE LUNCH
 
Flashmeeting / Chris Barker
Flashmeeting / Chris BarkerFlashmeeting / Chris Barker
Flashmeeting / Chris Barker
 

Viewers also liked

Accessibility beyond the desktop - panel slides Accessibility 2.0
Accessibility beyond the desktop - panel slides Accessibility 2.0Accessibility beyond the desktop - panel slides Accessibility 2.0
Accessibility beyond the desktop - panel slides Accessibility 2.0Henny Swan
 
Integrating universal design, best practices, & accessibility atia 2013 - (...
Integrating universal design, best practices, & accessibility   atia 2013 - (...Integrating universal design, best practices, & accessibility   atia 2013 - (...
Integrating universal design, best practices, & accessibility atia 2013 - (...Howard Kramer
 
Web accessibility with Ametys CMS
Web accessibility with Ametys CMSWeb accessibility with Ametys CMS
Web accessibility with Ametys CMSAmetys
 
Groovy & Grails for Spring/Java developers
Groovy & Grails for Spring/Java developersGroovy & Grails for Spring/Java developers
Groovy & Grails for Spring/Java developersPeter Ledbrook
 
Responsive Web Design - An Accessibility Tool
Responsive Web Design - An Accessibility ToolResponsive Web Design - An Accessibility Tool
Responsive Web Design - An Accessibility ToolGeorge Zamfir
 
Accessibility of Common Web Applications
Accessibility of Common Web ApplicationsAccessibility of Common Web Applications
Accessibility of Common Web ApplicationsTomáš Muchka
 
Introduction to Accessibility Best Practices
Introduction to Accessibility Best PracticesIntroduction to Accessibility Best Practices
Introduction to Accessibility Best Practicesshawtrusta11y
 
Developing for Diversity
Developing for DiversityDeveloping for Diversity
Developing for DiversityInclusiveUX
 
503 web accessibility - best practices
503   web accessibility - best practices503   web accessibility - best practices
503 web accessibility - best practicesJoanna Wiebe
 
Best Practices for Web Accessibility
Best Practices for Web AccessibilityBest Practices for Web Accessibility
Best Practices for Web AccessibilityCarli Spina
 
Accessibility for Hybrid Mobile
Accessibility for Hybrid MobileAccessibility for Hybrid Mobile
Accessibility for Hybrid MobileBobby Bristol
 
Screencasting Tutorial DRN
Screencasting Tutorial DRNScreencasting Tutorial DRN
Screencasting Tutorial DRNdrnbc
 
Agile Accessibility From a Testers Perspective
Agile Accessibility From a Testers PerspectiveAgile Accessibility From a Testers Perspective
Agile Accessibility From a Testers PerspectiveAlicia Jarvis, CPACC, CSM
 
Principales fonctionnalités du CMS Ametys
Principales fonctionnalités du CMS AmetysPrincipales fonctionnalités du CMS Ametys
Principales fonctionnalités du CMS AmetysAmetys
 
SSB BART Group Mobile Accessibility
SSB  BART Group Mobile AccessibilitySSB  BART Group Mobile Accessibility
SSB BART Group Mobile AccessibilityEduardo Meza-Etienne
 
Html & CSS - Best practices 2-hour-workshop
Html & CSS - Best practices 2-hour-workshopHtml & CSS - Best practices 2-hour-workshop
Html & CSS - Best practices 2-hour-workshopVero Rebagliatte
 
Mobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsMobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsAidan Tierney
 
Early prevention of accessibility issues with mockup & wireframe reviews
Early prevention of accessibility issues with mockup & wireframe reviewsEarly prevention of accessibility issues with mockup & wireframe reviews
Early prevention of accessibility issues with mockup & wireframe reviewsAidan Tierney
 
Embrology of the respiratory system
Embrology of the respiratory systemEmbrology of the respiratory system
Embrology of the respiratory systemOriba Dan Langoya
 

Viewers also liked (20)

Accessibility beyond the desktop - panel slides Accessibility 2.0
Accessibility beyond the desktop - panel slides Accessibility 2.0Accessibility beyond the desktop - panel slides Accessibility 2.0
Accessibility beyond the desktop - panel slides Accessibility 2.0
 
Integrating universal design, best practices, & accessibility atia 2013 - (...
Integrating universal design, best practices, & accessibility   atia 2013 - (...Integrating universal design, best practices, & accessibility   atia 2013 - (...
Integrating universal design, best practices, & accessibility atia 2013 - (...
 
Web accessibility with Ametys CMS
Web accessibility with Ametys CMSWeb accessibility with Ametys CMS
Web accessibility with Ametys CMS
 
Groovy & Grails for Spring/Java developers
Groovy & Grails for Spring/Java developersGroovy & Grails for Spring/Java developers
Groovy & Grails for Spring/Java developers
 
Responsive Web Design - An Accessibility Tool
Responsive Web Design - An Accessibility ToolResponsive Web Design - An Accessibility Tool
Responsive Web Design - An Accessibility Tool
 
Accessibility of Common Web Applications
Accessibility of Common Web ApplicationsAccessibility of Common Web Applications
Accessibility of Common Web Applications
 
Introduction to Accessibility Best Practices
Introduction to Accessibility Best PracticesIntroduction to Accessibility Best Practices
Introduction to Accessibility Best Practices
 
Developing for Diversity
Developing for DiversityDeveloping for Diversity
Developing for Diversity
 
503 web accessibility - best practices
503   web accessibility - best practices503   web accessibility - best practices
503 web accessibility - best practices
 
Best Practices for Web Accessibility
Best Practices for Web AccessibilityBest Practices for Web Accessibility
Best Practices for Web Accessibility
 
Accessibility for Hybrid Mobile
Accessibility for Hybrid MobileAccessibility for Hybrid Mobile
Accessibility for Hybrid Mobile
 
Screencasting Tutorial DRN
Screencasting Tutorial DRNScreencasting Tutorial DRN
Screencasting Tutorial DRN
 
Agile Accessibility From a Testers Perspective
Agile Accessibility From a Testers PerspectiveAgile Accessibility From a Testers Perspective
Agile Accessibility From a Testers Perspective
 
Line Height
Line HeightLine Height
Line Height
 
Principales fonctionnalités du CMS Ametys
Principales fonctionnalités du CMS AmetysPrincipales fonctionnalités du CMS Ametys
Principales fonctionnalités du CMS Ametys
 
SSB BART Group Mobile Accessibility
SSB  BART Group Mobile AccessibilitySSB  BART Group Mobile Accessibility
SSB BART Group Mobile Accessibility
 
Html & CSS - Best practices 2-hour-workshop
Html & CSS - Best practices 2-hour-workshopHtml & CSS - Best practices 2-hour-workshop
Html & CSS - Best practices 2-hour-workshop
 
Mobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsMobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & Trends
 
Early prevention of accessibility issues with mockup & wireframe reviews
Early prevention of accessibility issues with mockup & wireframe reviewsEarly prevention of accessibility issues with mockup & wireframe reviews
Early prevention of accessibility issues with mockup & wireframe reviews
 
Embrology of the respiratory system
Embrology of the respiratory systemEmbrology of the respiratory system
Embrology of the respiratory system
 

Similar to Avoiding common Accessibility mistakes

Foundation of Web Application Developmnet - XHTML
Foundation of Web Application Developmnet - XHTMLFoundation of Web Application Developmnet - XHTML
Foundation of Web Application Developmnet - XHTMLVashira Ravipanich
 
Java E O Mercado De Trabalho
Java E O Mercado De TrabalhoJava E O Mercado De Trabalho
Java E O Mercado De TrabalhoEduardo Bregaida
 
Atlassian - A Different Kind Of Software Company
Atlassian - A Different Kind Of Software CompanyAtlassian - A Different Kind Of Software Company
Atlassian - A Different Kind Of Software CompanyMike Cannon-Brookes
 
Chad Udell - Developers are from Mars, Designers are from Venus
Chad Udell - Developers are from Mars, Designers are from VenusChad Udell - Developers are from Mars, Designers are from Venus
Chad Udell - Developers are from Mars, Designers are from Venus360|Conferences
 
Personal Brand Startup
Personal Brand StartupPersonal Brand Startup
Personal Brand StartupJoseph Rueter
 
Drupal Themes: Past, present and future
Drupal Themes: Past, present and futureDrupal Themes: Past, present and future
Drupal Themes: Past, present and futureNicolas Borda
 
Inleiding tot CHI
Inleiding tot CHIInleiding tot CHI
Inleiding tot CHIErik Duval
 
JSDay 2013 - Practical Responsive Web Design
JSDay 2013 - Practical Responsive Web DesignJSDay 2013 - Practical Responsive Web Design
JSDay 2013 - Practical Responsive Web DesignJonathan Klein
 
5 Must Haves for Developing Corporate Social Media Strategy
5 Must Haves for Developing Corporate Social Media Strategy5 Must Haves for Developing Corporate Social Media Strategy
5 Must Haves for Developing Corporate Social Media StrategyBob Hazlett
 
Merb The Super Bike Of Frameworks
Merb The Super Bike Of FrameworksMerb The Super Bike Of Frameworks
Merb The Super Bike Of FrameworksRowan Hick
 
Outside In Development With Cucumber
Outside In Development With CucumberOutside In Development With Cucumber
Outside In Development With CucumberLittleBIGRuby
 
Outside-In Development With Cucumber
Outside-In Development With CucumberOutside-In Development With Cucumber
Outside-In Development With CucumberBen Mabey
 
Oxente on Rails 2009
Oxente on Rails 2009Oxente on Rails 2009
Oxente on Rails 2009Fabio Akita
 
Firefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web InnovatorsFirefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web InnovatorsDietrich Ayala
 
AIM to Chat with Meebo: Logging onto Academic Advising
AIM to Chat with Meebo: Logging onto Academic AdvisingAIM to Chat with Meebo: Logging onto Academic Advising
AIM to Chat with Meebo: Logging onto Academic AdvisingMarissa Saenz
 
Improving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceImproving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceWim Leers
 
RefreshPhilly Presentation February 09
RefreshPhilly Presentation February 09RefreshPhilly Presentation February 09
RefreshPhilly Presentation February 09Johnny Bilotta
 
Selection Workshop Slides from Gilbane San Francisco 2009 Conference
Selection Workshop Slides from Gilbane San Francisco 2009 ConferenceSelection Workshop Slides from Gilbane San Francisco 2009 Conference
Selection Workshop Slides from Gilbane San Francisco 2009 Conferencesggottlieb
 

Similar to Avoiding common Accessibility mistakes (20)

Foundation of Web Application Developmnet - XHTML
Foundation of Web Application Developmnet - XHTMLFoundation of Web Application Developmnet - XHTML
Foundation of Web Application Developmnet - XHTML
 
Java E O Mercado De Trabalho
Java E O Mercado De TrabalhoJava E O Mercado De Trabalho
Java E O Mercado De Trabalho
 
Depot Best Practices
Depot Best PracticesDepot Best Practices
Depot Best Practices
 
Atlassian - A Different Kind Of Software Company
Atlassian - A Different Kind Of Software CompanyAtlassian - A Different Kind Of Software Company
Atlassian - A Different Kind Of Software Company
 
Chad Udell - Developers are from Mars, Designers are from Venus
Chad Udell - Developers are from Mars, Designers are from VenusChad Udell - Developers are from Mars, Designers are from Venus
Chad Udell - Developers are from Mars, Designers are from Venus
 
Personal Brand Startup
Personal Brand StartupPersonal Brand Startup
Personal Brand Startup
 
Drupal Themes: Past, present and future
Drupal Themes: Past, present and futureDrupal Themes: Past, present and future
Drupal Themes: Past, present and future
 
Inleiding tot CHI
Inleiding tot CHIInleiding tot CHI
Inleiding tot CHI
 
Learning To Love IE6
Learning To Love IE6Learning To Love IE6
Learning To Love IE6
 
JSDay 2013 - Practical Responsive Web Design
JSDay 2013 - Practical Responsive Web DesignJSDay 2013 - Practical Responsive Web Design
JSDay 2013 - Practical Responsive Web Design
 
5 Must Haves for Developing Corporate Social Media Strategy
5 Must Haves for Developing Corporate Social Media Strategy5 Must Haves for Developing Corporate Social Media Strategy
5 Must Haves for Developing Corporate Social Media Strategy
 
Merb The Super Bike Of Frameworks
Merb The Super Bike Of FrameworksMerb The Super Bike Of Frameworks
Merb The Super Bike Of Frameworks
 
Outside In Development With Cucumber
Outside In Development With CucumberOutside In Development With Cucumber
Outside In Development With Cucumber
 
Outside-In Development With Cucumber
Outside-In Development With CucumberOutside-In Development With Cucumber
Outside-In Development With Cucumber
 
Oxente on Rails 2009
Oxente on Rails 2009Oxente on Rails 2009
Oxente on Rails 2009
 
Firefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web InnovatorsFirefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web Innovators
 
AIM to Chat with Meebo: Logging onto Academic Advising
AIM to Chat with Meebo: Logging onto Academic AdvisingAIM to Chat with Meebo: Logging onto Academic Advising
AIM to Chat with Meebo: Logging onto Academic Advising
 
Improving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceImproving Drupal's Page Loading Performance
Improving Drupal's Page Loading Performance
 
RefreshPhilly Presentation February 09
RefreshPhilly Presentation February 09RefreshPhilly Presentation February 09
RefreshPhilly Presentation February 09
 
Selection Workshop Slides from Gilbane San Francisco 2009 Conference
Selection Workshop Slides from Gilbane San Francisco 2009 ConferenceSelection Workshop Slides from Gilbane San Francisco 2009 Conference
Selection Workshop Slides from Gilbane San Francisco 2009 Conference
 

More from Dirk Ginader

Making your Angular.js Application accessible
Making your Angular.js Application accessibleMaking your Angular.js Application accessible
Making your Angular.js Application accessibleDirk Ginader
 
Teach your Browser new tricks
Teach your Browser new tricksTeach your Browser new tricks
Teach your Browser new tricksDirk Ginader
 
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]Dirk Ginader
 
Let Grunt do the work, focus on the fun!
Let Grunt do the work, focus on the fun!Let Grunt do the work, focus on the fun!
Let Grunt do the work, focus on the fun!Dirk Ginader
 
HTML5 Dev Conf - Sass, Compass & the new Webdev tools
HTML5 Dev Conf - Sass, Compass &  the new Webdev toolsHTML5 Dev Conf - Sass, Compass &  the new Webdev tools
HTML5 Dev Conf - Sass, Compass & the new Webdev toolsDirk Ginader
 
Sass, Compass and the new tools - Open Web Camp IV
Sass, Compass and the new tools - Open Web Camp IVSass, Compass and the new tools - Open Web Camp IV
Sass, Compass and the new tools - Open Web Camp IVDirk Ginader
 
Javascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIJavascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIDirk Ginader
 
The accessibility features of Yahoo! Finance
The accessibility features of Yahoo! FinanceThe accessibility features of Yahoo! Finance
The accessibility features of Yahoo! FinanceDirk Ginader
 
Javascript done right
Javascript done rightJavascript done right
Javascript done rightDirk Ginader
 
Javascript auf Client und Server mit node.js - webtech 2010
Javascript auf Client und Server mit node.js - webtech 2010Javascript auf Client und Server mit node.js - webtech 2010
Javascript auf Client und Server mit node.js - webtech 2010Dirk Ginader
 
the 5 layers of web accessibility - Open Web Camp II
the 5 layers of web accessibility - Open Web Camp IIthe 5 layers of web accessibility - Open Web Camp II
the 5 layers of web accessibility - Open Web Camp IIDirk Ginader
 
Das Web Als Datenbank Mit Yql Und Pipes
Das Web Als Datenbank Mit Yql Und PipesDas Web Als Datenbank Mit Yql Und Pipes
Das Web Als Datenbank Mit Yql Und PipesDirk Ginader
 
Die 5 Ebenen Barriererfreier Web Entwicklung
Die 5 Ebenen Barriererfreier Web EntwicklungDie 5 Ebenen Barriererfreier Web Entwicklung
Die 5 Ebenen Barriererfreier Web EntwicklungDirk Ginader
 
The 5 Layers of Web Accessibility
The 5 Layers of Web AccessibilityThe 5 Layers of Web Accessibility
The 5 Layers of Web AccessibilityDirk Ginader
 
Accessible Javascript mit Frameworks - Best of Accessibility 2008
Accessible Javascript mit Frameworks - Best of Accessibility 2008Accessible Javascript mit Frameworks - Best of Accessibility 2008
Accessible Javascript mit Frameworks - Best of Accessibility 2008Dirk Ginader
 
Accessible Javascript - Barcamp Brighton 2
Accessible Javascript - Barcamp Brighton 2Accessible Javascript - Barcamp Brighton 2
Accessible Javascript - Barcamp Brighton 2Dirk Ginader
 

More from Dirk Ginader (16)

Making your Angular.js Application accessible
Making your Angular.js Application accessibleMaking your Angular.js Application accessible
Making your Angular.js Application accessible
 
Teach your Browser new tricks
Teach your Browser new tricksTeach your Browser new tricks
Teach your Browser new tricks
 
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
 
Let Grunt do the work, focus on the fun!
Let Grunt do the work, focus on the fun!Let Grunt do the work, focus on the fun!
Let Grunt do the work, focus on the fun!
 
HTML5 Dev Conf - Sass, Compass & the new Webdev tools
HTML5 Dev Conf - Sass, Compass &  the new Webdev toolsHTML5 Dev Conf - Sass, Compass &  the new Webdev tools
HTML5 Dev Conf - Sass, Compass & the new Webdev tools
 
Sass, Compass and the new tools - Open Web Camp IV
Sass, Compass and the new tools - Open Web Camp IVSass, Compass and the new tools - Open Web Camp IV
Sass, Compass and the new tools - Open Web Camp IV
 
Javascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIJavascript done right - Open Web Camp III
Javascript done right - Open Web Camp III
 
The accessibility features of Yahoo! Finance
The accessibility features of Yahoo! FinanceThe accessibility features of Yahoo! Finance
The accessibility features of Yahoo! Finance
 
Javascript done right
Javascript done rightJavascript done right
Javascript done right
 
Javascript auf Client und Server mit node.js - webtech 2010
Javascript auf Client und Server mit node.js - webtech 2010Javascript auf Client und Server mit node.js - webtech 2010
Javascript auf Client und Server mit node.js - webtech 2010
 
the 5 layers of web accessibility - Open Web Camp II
the 5 layers of web accessibility - Open Web Camp IIthe 5 layers of web accessibility - Open Web Camp II
the 5 layers of web accessibility - Open Web Camp II
 
Das Web Als Datenbank Mit Yql Und Pipes
Das Web Als Datenbank Mit Yql Und PipesDas Web Als Datenbank Mit Yql Und Pipes
Das Web Als Datenbank Mit Yql Und Pipes
 
Die 5 Ebenen Barriererfreier Web Entwicklung
Die 5 Ebenen Barriererfreier Web EntwicklungDie 5 Ebenen Barriererfreier Web Entwicklung
Die 5 Ebenen Barriererfreier Web Entwicklung
 
The 5 Layers of Web Accessibility
The 5 Layers of Web AccessibilityThe 5 Layers of Web Accessibility
The 5 Layers of Web Accessibility
 
Accessible Javascript mit Frameworks - Best of Accessibility 2008
Accessible Javascript mit Frameworks - Best of Accessibility 2008Accessible Javascript mit Frameworks - Best of Accessibility 2008
Accessible Javascript mit Frameworks - Best of Accessibility 2008
 
Accessible Javascript - Barcamp Brighton 2
Accessible Javascript - Barcamp Brighton 2Accessible Javascript - Barcamp Brighton 2
Accessible Javascript - Barcamp Brighton 2
 

Recently uploaded

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 

Recently uploaded (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 

Avoiding common Accessibility mistakes

  • 1. Avoiding common Accessibility mistakes think visibility 2009 Dirk Ginader http://ginader.com http://twitter.com/ginader Saturday, March 7, 2009
  • 2. You know SEO? Helps a LOT! Saturday, March 7, 2009
  • 3. • easily understandable valuable content • semantically rich markup • the >right< semantic markup (if you think you found a wicket cool new use for a definition list - think again...) Saturday, March 7, 2009
  • 4. • good “speaking” URLs • Link-texts that make sense by themselves • valuable alternative texts on Images Saturday, March 7, 2009
  • 5. You know Usability? Accessibility === Usability! except it’s for everyone... Saturday, March 7, 2009
  • 6. • use the tab and enter key only - can you navigate your site? • disable Javascript - are you still able to do everything? • zoom the page in the Browser (yes IE6 too) does the Layout still work? Saturday, March 7, 2009
  • 7. • zoom the screen are you able to realize all the changes? • close your eyes ... Saturday, March 7, 2009
  • 8. You know CSS? Saturday, March 7, 2009
  • 9. • using CSS is great for accessibility - right? • yeah... • ... not necessarily Saturday, March 7, 2009
  • 10. No I will not preach <table> Layout ;-) Saturday, March 7, 2009
  • 12. • used in the wrong way CSS can reduce accessibility • display:none and visibility:hidden hide content - also from Screenreaders • does your hidden content show up on :focus or only on :hover? • CSS only Dropdown Navigation is a misuse! CSS is for design. Javascript is for behavior. Saturday, March 7, 2009
  • 14. • it’s evil - right? • nope... • ... not necessarily Saturday, March 7, 2009
  • 15. • used correctly, Javascript is not only nicely accessible but can even enhance accessibility • subtile animations can make otherwise confusing workflows easier to understand (subtile! Or motion sickness kicks in...) • hiding currently unused elements and highlighting the important ones can make your layout appear far less complex Saturday, March 7, 2009
  • 16. • progressively enhance the default non-js layout and hijack the existing controls to do their job in the browser instead on the server • create new interaction elements, that offer functionality only available with Javascript, by Javascript and make sure they are tab- able • don’t break the natural tab order by setting a positive tab index. A tab index of 0 can make non tab-able elements accessible too! Saturday, March 7, 2009
  • 17. Screenreaders don’t understand Javascript anyway... Saturday, March 7, 2009
  • 18. • is there still someone believing that? • most Screenreaders actually handle Javascript very well! • they just don’t know if you don’t tell them Saturday, March 7, 2009
  • 19. • inform Screenreaders about what’s happening • a logic and understandable workflow is the easiest thing to test without a Screenreader • focus() the next logical element Saturday, March 7, 2009
  • 21. without Javascript http://finance.yahoo.com/currency-converter Saturday, March 7, 2009
  • 22. without Javascript http://finance.yahoo.com/currency-converter Saturday, March 7, 2009
  • 23. without Javascript http://finance.yahoo.com/currency-converter Saturday, March 7, 2009
  • 24. with Javascript http://finance.yahoo.com/currency-converter Saturday, March 7, 2009
  • 25. with Javascript http://finance.yahoo.com/currency-converter Saturday, March 7, 2009
  • 26. with Javascript http://finance.yahoo.com/currency-converter Saturday, March 7, 2009
  • 28. More Examples • http://icant.co.uk/easy-youtube • http://blog.ginader.de/archives/2009/02/07/ jQuery-Accessible-Tabs-How-to-make- tabs-REALLY-accessible.php • http://www.accessibilitytips.com Saturday, March 7, 2009
  • 29. For more geeky tech details see you at Geekup Leeds 15.04.2009 http://ginader.com http://twitter.com/ginader Saturday, March 7, 2009
  • 30. More Details? Geekup Leeds 15.04.2009 Saturday, March 7, 2009

Editor's Notes