IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Sélecteur CSS particulier


Sujet :

CSS

  1. #1
    Membre averti
    Inscrit en
    Octobre 2002
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Octobre 2002
    Messages : 25
    Par défaut Sélecteur CSS particulier
    Bonjour,

    je cherche un sélecteur CSS qui me permette de sélectionner les balises a ne contenant pas d'image...

    je m'explique, j'utilise (sous firefox) l'extension stylish qui me permet de rajouter des styles aux pages que je visite. j'ai un script qui me permet d'afficher une enveloppe apres les adresses mails:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    a[href^="mailto:"]:after {
      content: url("data:image/png;base64,iVBORw0K...K5CYII=");
      padding-left:4px;
    }
    et je voudrais faire en sorte que ce style ne s'applique pas au blaise qui contiennent déja une image... j'ai essayé avec le sélecteur :not() mais je n'ai pas réussit a obtenir ce que je voulais; et de même je ne vois pas où je peux aller avec les sélecteur du type child, ni même en faisant un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    a[href^="mailto:"]:after img {
      content:none;
    }
    car ce style s'applique du coup a la balise img et non a...


    qqun aurait il une idée de la bonne méthode pour ce que je cherche à faire? (je précise que vu que c'est pour une extension sous FF, je me moque de la compatibilité IE...)

    Merci bcp,

    Luc

  2. #2
    Membre confirmé Avatar de arnobase
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    151
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 151
    Par défaut
    Dans la meme logique ne serait-ce pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    a[href^="mailto:"][img]:after {
      content:none;
    }

  3. #3
    Membre averti
    Inscrit en
    Octobre 2002
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Octobre 2002
    Messages : 25
    Par défaut
    Citation Envoyé par arnobase
    Dans la meme logique ne serait-ce pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    a[href^="mailto:"][img]:after {
      content:none;
    }
    il me semble que la notation [] est pour les attributs, alors que la c'est une balise fille... j'ai eu un faux espoir en croyant que ca marchait, mais en fait ca ne me met plus du tout mon contenu...

  4. #4
    Membre confirmé Avatar de arnobase
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    151
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 151
    Par défaut
    j'avais compris de traviole ce que tu voulais désolé... je vois pas mieux en fait

  5. #5
    Membre averti
    Inscrit en
    Octobre 2002
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Octobre 2002
    Messages : 25
    Par défaut
    je re-précise un peu ce que je veux faire...

    grâce a ce code et au sélecteur ":after", j'obtiens ce résultat:




    mais le problème, c que qd un site a déja une img, ca fait pas jojo:





    j'espere que ca peut aider... ^^

    merci,
    Luc

  6. #6
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Tu n'as qu'à utiliser des classes pour tes liens.

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a href="mailto" class="mailtotexte">Texte</a>
    <a href="mailto" class="mailtoimg"><img .. /></a>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    a.mailtotexte:after {
      content: url("data:image/png;base64,iVBORw0K...K5CYII=");
      padding-left:4px;
    }

  7. #7
    Membre averti
    Inscrit en
    Octobre 2002
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Octobre 2002
    Messages : 25
    Par défaut
    Citation Envoyé par Bisûnûrs
    Tu n'as qu'à utiliser des classes pour tes liens.
    en fait c'est pour un style chargé par Stylish qqusoit les pages que je visite, ce n'est pas pour un site que je développe. Je ne peux donc agir sur les classes...

  8. #8
    Rédacteur
    Avatar de MasterOfChakhaL
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2004
    Messages
    2 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 147
    Par défaut
    salut,

    Je ne pense pas que ce soit possible directement en css.
    Cela dit, je n'ai pas essayé mais p'tet qu'en bidouillant un peu tu peux arriver a quelque chose.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    a[href^="mailto:"]:after {
      content: url("data:image/png;base64,iVBORw0K...K5CYII=");
      padding-left:4px;
    }
    Comme tu l'as déjà fait, ca te permet d'ajouter l'image...
    Ensuite, il faut masquer l'image que tu ajoutes quand une image et présente.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    a[href^="mailto:"] img {
      margin-right: -largeur de l'image et du padding-left;
    }
    Si l'image du lien a déjà un margin, ca ne va pas le faire mais bon...
    Il te faudra aussi jouer avec les z-index je pense.
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    N'oubliez pas de cliquer sur quand votre question à trouvé une solution.

    Si vous n'avez pas encore lu les règles du club, mieux vaut tard que jamais!

Discussions similaires

  1. [Article] Savoir comment utiliser les sélecteurs CSS 2.1 et les nouveautés CSS 3
    Par Bovino dans le forum Publications (X)HTML et CSS
    Réponses: 1
    Dernier message: 20/01/2012, 17h35
  2. Sélecteur CSS sous Opéra.
    Par Lordsephiroth dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 20/03/2009, 12h01
  3. Réponses: 3
    Dernier message: 29/06/2007, 16h57
  4. Les sélecteurs css
    Par TheRedLed dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 25/08/2006, 15h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo