Pour gérer certains plugins dans mon thème, j'aimerais forcer l'affichage de l'attribut ALT plutôt que de l'image, une classe donnée.
J'ai trouvé ça :
http://kingdesk.com/articles/force-alt-tex-with-css/
qui ne marche pas dans mon cas...
L'idée c'est que l'image ne soit pas affichée, que le texte le soit, et qu'il n'y ait pas d'affichage d'erreur pour l'image.
Est-ce que c'est possible ou pas ?
Dernière modification par Zaphod (2010-11-16 08:59:50)
Hors ligne
Au pire, en JavaScript, non ?
Hors ligne
il semblerais que cela ne fonctionne pas avec IE ?
Peux tu dire plus précisément à quoi tu veux aboutir
Hors ligne
Je me mets dans le cas où dans un plugin (PWG stuffs en particulier) il y a des icones qui sont intégrés dans des blocs.
Par exemple un truc de ce style :
<a href="lien" alt="éditer"><img src="icon/edit.png"></a>
(le "éditer" étant dépendant du fichier langue, mais il est déja interprété au moment où on prend en compte le css)
Je voudrais (si possible) forcer l'affichage du alt (en texte donc) et ne pas afficher l'image.
Tout ça si possible en CSS.
Si je ne mets pas de "edit.png" ça passe bien avec firefox, mais IE et Chrome me mettent un icone d'image non trouvée.
Pour l'instant j'ai fait le bourrin en mettant un "display:none" mais si je peux avoir l'affichage du ALT... ça serait mieux, et en plus ça pourrait s'appliquer éventuellement à d'autres plugin qui ont souvent des icones... ce qui colle mal avec des thèmes du style simple.
Si ça n'est pas faisable en CSS... comme dit Luc je me poserais la question de comment le faire en javascript, ça doit être faisable...
Dernière modification par Zaphod (2010-11-16 13:03:10)
Hors ligne
Bon, comme je ne sais pas s'il y a quelque chose qui convient en CSS, je me suis fait un script en jQuery au chargement de la page.
Pour le cas particulier des icones des blocs PWG stuffs, ça donne ça :
var stuffs_actions=$(".categoryActions",".stuffs_block .stuffs"); if (stuffs_actions.length != 0) { stuffs_actions.each(function(index) { var images=$(this).find("img"); if (images.length !=0) { images.each(function(index) { var alt_text = ($(this).attr("alt")); $(this).before(alt_text); $(this).parents("li").css("width","auto"); $(this).remove(); }); } }); }
Je recherche les blocs correspondants, ensuite je recherche les images, j'insère la balise alt sur le parent et je delete le noeud de l'image.
Hors ligne
Zaphod a écrit:
Par exemple un truc de ce style :
<a href="lien" alt="éditer"><img src="icon/edit.png"></a>
(le "éditer" étant dépendant du fichier langue, mais il est déja interprété au moment où on prend en compte le css)
Ce que je ne comprends pas c'est pourquoi tu ne code pas <a href="lien" alt="éditer">éditer</a>
si tu ne veux pas d'image ?
------------
Enfin est ce que ta solution fonctionne ?
Est ce que c'est résolue ?
Hors ligne
Parce que c'est un code qui fait partie de plugins, comme PWG stuffs.
Donc je n'ai pas de prise sur le code du plugin.
Le but c'est d'intégrer correctement les plugins au style de mon thème.
(où les actions ne sont pas des icones mais du texte).
Le code javascript que je cite plus haut marche très bien.
Hors ligne