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 :

Display:none sur IE


Sujet :

CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Inscrit en
    Juillet 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 10
    Par défaut Display:none sur IE
    Bonjour à tous,

    voilà le morceau de code que j'utilise sur Firefox et qui fonctionne parfaitement.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <html>
    <body>
     
    <style type="text/css">#dialog\:cancel-button { display:none; } </style>
    <br/>
    bla bla bla
    <br/>
    <input id="dialog:ok-button" name="dialog:ok-button" type="button" OnClick="javascript:history.back();" value="Ok"/>
    <input id="dialog:cancel-button" name="dialog:cancel-button" type="button" OnClick="javascript:history.back();" value="Annuler"/>
    </body>
    </html>
    Je souhaite donc cacher le second bouton. Le problème est que je ne peux pas changer son nom (qui contient un caractère ':'), car il s'agit d'un bouton dans une application web complète dont je ne peux pas modifier les sources, j'y ajoute donc du contenu et je voudrais seulement cacher le bouton en "trichant" un peu.

    Merci de votre aide.

    Cordialement,

    Nathan

  2. #2
    Rédacteur

    Homme Profil pro
    Responsable de projet
    Inscrit en
    Mai 2009
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de projet
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 634
    Par défaut
    Salut,

    je te conseille de rajouter une classe à ton input id="dialog:cancel-button" et donc d'utiliser cette classe pour appliquer le "display:none"

    Par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <html>
    <body>
     
    <style type="text/css">.cancelButton { display:none; } </style>
    <br/>
    bla bla bla
    <br/>
    <input id="dialog:ok-button" name="dialog:ok-button" type="button" OnClick="javascript:history.back();" value="Ok"/>
    <input id="dialog:cancel-button" class="cancelButton" name="dialog:cancel-button" type="button" OnClick="javascript:history.back();" value="Annuler"/>
    </body>
    </html>
    Au passage, mettre des ":cancel-button" dans un "id" ou une "class" n'est pas une très bonne idée. En effet les ":" sont réservés pour les pseudo-éléments et les pseudo-classes en CSS.

    voila j'espere que cela t'aidera

    ++

  3. #3
    Membre régulier
    Inscrit en
    Juillet 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 10
    Par défaut
    Hello,

    merci pour ta réponse mais je savais déjà tout ça

    Mon souci ici est que j'applique du code supplémentaire à un code déjà existant, je ne peux donc pas modifier la déclaration du bouton que je veux cacher (que ce soit le nom ou même rajouter une classe). En fait, je souhaite juste avoir le même comportement que j'ai avec Firefox sur IE (avec le code mentionné en haut mais qui n'est bien sûr pas exhaustif).

    Cordialement,

    Nathan.

  4. #4
    Rédacteur

    Homme Profil pro
    Responsable de projet
    Inscrit en
    Mai 2009
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de projet
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 634
    Par défaut
    Bon et bien, j'ai bien une solution mais elle ne fonctionnera que sur les navigateurs acceptant le CSS2 (ça devrait aller)
    utilise le pseudo-element :last-child.

    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <html>
        <body>
            <style type="text/css">
    	    input:last-child{ display:none; } 
            </style>
            <br/>
                bla bla bla
            <br/>
            <input id="dialog:ok-button" name="dialog:ok-button" type="button" OnClick="javascript:history.back();" value="Ok"/>
            <input id="dialog:cancel-button" name="dialog:cancel-button" type="button" OnClick="javascript:history.back();" value="Annuler"/>
        </body>
    </html>
    et ainsi le dernier input (donc le "cancel") sera en "display:none"

  5. #5
    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
    Au pire tu peux affecter ta valeur en Javascript.

  6. #6
    Membre régulier
    Inscrit en
    Juillet 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 10
    Par défaut
    Même constat en utilisant "last-child", cela fonctionne sur Firefox mais pas IE (version 7).

    Sinon, je ne suis pas expert en Javascript, comment puis-je procéder ? En général j'utilise le javascript pour réaliser un event lors d'un clic, dans mon cas il faut que l'input soit cachée directement sans intervention de l'utilisateur.

    Cordialement,

    Nathan.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Display: none sur div enfant
    Par lolo34140 dans le forum Général JavaScript
    Réponses: 31
    Dernier message: 26/03/2013, 10h35
  2. Probleme sur display:none;
    Par Invité dans le forum Mise en page CSS
    Réponses: 12
    Dernier message: 12/02/2013, 14h29
  3. Agir sur un Children qui est display:none
    Par smthg.bzr dans le forum jQuery
    Réponses: 1
    Dernier message: 20/01/2012, 14h13
  4. display none sur un <li>
    Par Dev@lone dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 04/11/2009, 18h20
  5. Faire fonctionner le onfocus sur un élément en display:none
    Par eXiaNazaire dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 27/04/2006, 11h10

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