Couleur "transparent" ne fonctionne pas
j'ai un problème avec IE (quoi d'autre?):
je génère du contenu avec CSS qui a aussi une image de fond. Je ressemble à ça:
#nav ul li:after {
content: "--";
position: relative;
z-index: 99;
background: transparent url(image.png);
color: transparent;
}
La couleur du texte est dans les navigateurs non-IE-transparent, mais dans tous les navigateurs IE (IE6-IE8) il est noir et vous pourriez le voir. Comment rendre le texte transparent / invisible?
j'ai déjà essayé: visibilité - opacité - filtre - texte-tiret ... Mais aucun n'a fait son travail correctement, soit il disparaît (avec lui dont j'ai besoin) ou de l'attribut ne s'applique pas.
10 réponses
si ce que vous essayez de faire est de montrer l'image comme arrière-plan et de ne pas montrer le texte
font-size:0px
ça marche!!!
qu'en utilisant la hauteur de la ligne
line-height:0;
cela a fonctionné dans mon cas.
- je l'obtenir: Avec le bon rembourrage et un zéro font-size! Définissez la valeur padding-left à un pixel au-delà de la largeur de l'image.
si cela ne fonctionne pas dans Internet Explorer 8
font-size: 0;
assurez-vous d'utiliser un doctype valide:
<!DOCTYPE html>
ça devrait marcher. Si elle n'ajoute pas display: block ou inline-block
.transparent {
text-indent: 100%;
overflow: hidden;
white-space: nowrap;
}
je pense que personne ne les versions d'IE de soutien color: transparent
Peut-être pourriez-vous essayer de le faire avec jQuery ou quelque chose comme ça.
je suppose que vous avez déjà corrigé ceci, mais dernièrement j'ai utilisé une très grande hauteur de ligne, quand text-indent me donne des problèmes de mise en page, combiné avec overflow: caché pour cacher le texte.
IE ne supporte pas li:after
de façon constante. De quelle IE parles-tu? IE6? IE7? Les deux?
pour moi Couleur:transparent ne fonctionnait pas dans IE8, et il montrait du texte avec la couleur par défaut. J'ai utilisé visibility: hidden; pour IE8 seulement car le texte n'était pas nécessaire d'afficher.
espérons cette aide au cas où, si l'élément n'est pas nécessaire d'afficher.
je vois que vous utilisez un PNG comme image de fond. Normalement, si vous utilisez IE 6, Il y a une correction pour la transparence PNG (http://www.twinhelix.com/css/iepngfix/). Même ainsi, cela ne fonctionnera pas avec l'arrière-plan-images. Donc si vous utilisez IE 6, il n'y a vraiment pas de solution.