Pour l'accessibilité "orale" : les styles CSS sont ignorés par les lecteurs d'écran, à l'exception essentielle de
display et de
visibility. Les hacks CSS ont donc peu de risques d'être problématiques à cet égard s'ils ne jouent pas sur ces propriétés.
On peut cependant signaler le fait qu'Opera 8.0 implémente les styles "speech", et que le Tantek Celik Hack (de moins en moins employé aujourd'hui) nécessite quelques précautions pour ne pas perturber les styles "voice-family", ce qui n'est pas vraiment aujourd'hui un enjeu essentiel pour l'accessibilité (voir
http://test.blog-and-blues.org/tanteck_celik_hack/ ).
Concernant les autres types d'accès "avec handicap", ou l'accessibilité d'un point de vue plus large, il faut de même se méfier des hacks qui détournent une syntaxe destinée à un autre usage. On peut par exemple faire des réserves sur le hack !important qui fait que la propriété concernée ne sera surclassée dans une feuille de style utilisateur que si celui-ci a lui-même mis un !important sur sa propre valeur (voir
http://blog-and-blues.org/weblog/2004/09/03/295#c437 )
Sinon, le risque majeur d'une feuille de style truffée de hacks comme un bel arbre de Noël... est plutôt qu'elle a toutes les chances de devenir de plus en plus difficile à maintenir, au fil des futures versions des navigateurs concernés.
A cet égard, le doute pèse encore sur la décision qui sera prise pour le hack de
* html par Microsoft, pour le future IE7 (voir
http://blogs.msdn.com/ie/archive/2005/07/29/445242.aspx#445550 )
Autant que possible, mieux vaut utiliser les commentaires conditionnels pour IEWin, et le "lâcher prise" sur le design.
<edit>Un autre chose, tiens : attention aux hacks qui ont des effets pervers, tels que l'astuce forçant IEWin à simuler la position fixe. Elle désactive en effet le scroll vertical (molette et flèches) dans Firefox... Mieux vaut, là encore, renoncer à obtenir le même rendu dans tous les navigateurs, utiliser position:fixed de manière normale, précédé d'un position:absolute qui ne sera appliqué que par IE...
Modifié par Laurent Denis (01 Aug 2005 - 09:21)