À la différence des tests de conformité habituellement utilisés pour les implémentations HTML ou CSS, Acid2 n'est pas une suite de tests unitaires : il se présente sous la forme d'une page web unique qui concentre plusieurs dizaines de tests, sous la forme d'un dessin composé de lignes horizontales colorées représentant une figure souriante. Malgré la documentation fournie, il en résulte une certaine complexité, nécessitant des précisions ultérieures sur les tests spécifiques.
Le seul texte présent est « Hello World! ». Le balisage HTML4.01 est une série de blocs génériques (éléments div) ou spécifiques (éléments h2, p, object, table, blockquote, address et liste ul) pour la plupart vides.
La feuille de style interne combine différentes séries de propriétés, de manière à tester le support :
- des positionnements relatif, absolu et fixe ;
- du modèle de boîte ;
- du modèle de formatage en tableau ;
- de l'algorithme de calcul des marges ;
- du contenu généré ;
- du calcul des hauteurs de ligne dans les boîtes de ligne ;
- du comportement au survol ;
- de l'ordre du dessin dans les empilements ;
- du comportement de l'analyseur syntaxique (parser) CSS en cas d'erreur de syntaxe.
Le test ne se limite pas à essayer des fonctionnalités de CSS 2. Il concerne également le support d'éléments object imbriqués, permettant de produire différents contenus alternatifs selon les capacités du client, ainsi que les règles d'analyse HTML sur la fermeture des balises et les blocs de commentaires SGML. Il vérifie enfin le support des images PNG translucides et la gestion correcte du protocole data: pour l'insertion d'objets intégrés.
Les fonctionnalités vérifiées par le test Acid2 sont destinées à être implémentées par les navigateurs web en mode de rendu « strict » : la technique du doctype switching leur permet de maintenir si nécessaire leurs implémentations antérieures, non conformes, dans leur mode de rendu compatible (mode « quirks »).
Si le résultat de l'affichage de cette page web n'est pas identique au dessin attendu, la mise en œuvre de CSS 2 dans le navigateur n'est théoriquement pas conforme à la spécification CSS 2. Par contre, le fait qu'un navigateur réussisse le test ne signifie pas qu'il supporte entièrement CSS 2.