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 :

Questions sur la syntaxe des sélecteurs


Sujet :

CSS

  1. #1
    Membre habitué Avatar de pierre24
    Profil pro
    Inscrit en
    Février 2008
    Messages
    391
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 391
    Points : 160
    Points
    160
    Par défaut Questions sur la syntaxe des sélecteurs
    Est ce que quelqu'un peut me dire ce que signifie les préfixes devant les ID ?

    Qu'est que signifie cette syntaxe

    ???

    Je connais pas du tout cette syntaxe !

  2. #2
    Membre chevronné Avatar de Er3van
    Homme Profil pro
    Architecte Logiciel
    Inscrit en
    Avril 2008
    Messages
    1 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte Logiciel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 430
    Points : 2 227
    Points
    2 227
    Par défaut
    Quand tu crées une div, tu peux soit lui attribuer un id, soit une classe ( ou rien du tout ) :

    <div id='content'> blalblabla </div>
    <div class='content'> blalblabla </div>

    Et dans ton css, les id sont gérées via les '#', et les classes avec '.'
    Il me semble les id sont pour les div uniques ( menu, content, footer.... )

    #content ou div#content {
    tes proprietes qui s'appliqueront à ta première div
    }

    .content {
    tes proprietes qui s'appliqueront à ta seconde div
    }

    Pour ce qui est des #content li, c'est de l'héritage, cela ne s'appliquera qu'au <li> contenues dans ta <div id='content'>.

    Voilà voilà, j'espère t'avoir répondu sans avoir dit d'anneries

  3. #3
    Membre émérite
    Avatar de Candygirl
    Femme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 912
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 52
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 912
    Points : 2 907
    Points
    2 907
    Par défaut
    Citation Envoyé par pierre24 Voir le message
    Est ce que quelqu'un peut me dire ce que signifie les préfixes devant les ID ?

    Ce sélecteur cible l'élément div qui a pour attribut l'id "truc"
    Citation Envoyé par pierre24 Voir le message
    Ce sélecteur cible tous les li descendants de l'élément qui a pour attribut "momID"

  4. #4
    Membre habitué Avatar de pierre24
    Profil pro
    Inscrit en
    Février 2008
    Messages
    391
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 391
    Points : 160
    Points
    160
    Par défaut
    ok merci de l'info.

    Mais j'ai jamais utilisé. En gros quels sont les avantages ?

  5. #5
    Membre chevronné Avatar de Er3van
    Homme Profil pro
    Architecte Logiciel
    Inscrit en
    Avril 2008
    Messages
    1 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte Logiciel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 430
    Points : 2 227
    Points
    2 227
    Par défaut
    Exemple simple :

    Tu fais un menu avec des sous-menu en css, en utilisant une syntaxe de type

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <div id="menu">
    	<uL>
    		<li><a href="accueil.php">Accueil</a></li>
    		<li><a href="nous_contacter.php">Nous Contacter</a></li>
    		<li><a href="liens">Liens</a></li>
    	</ul>
    </div>
    Et par exemple, tu veux que les liens ne soient pas soulignés
    Dans ton css :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    a {
         text-decoration:none ;
    }
    Mais dans ce cas, tous tes liens de ton site seront non-soulignés. Si tu veux que tous les liens soient soulignés à l'exception de ceux de ton menu, plutôt que de devoir mettre des style inline ( style='text-decoration:none' ) dans ton menu, tu peux faire ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #menu li a {
         text-decoration:none ;
    }
    a {
         text-decoration:underline ;
    }

    PS : J'ai peut-être pas les bons mots clefs ( genre text-decoration et underline ), j'ai ecrit ça sans tester, c'est juste en exemple.

  6. #6
    Membre émérite
    Avatar de Candygirl
    Femme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 912
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 52
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 912
    Points : 2 907
    Points
    2 907
    Par défaut
    Pour ta première question, il n'y a, à priori, pas grand intérêt à spécifier le nom de l'élément puisqu'un id est unique sur une page.

    Il pourrait être utile si, sur une page, on avait un élément qui comporte cet id et que sur une autre page c'est un autre élément qui comporte le même nom d'id.

    On peut aussi le mettre simplement pour des raisons de répérage; se rappeler que cet id est attribué à un élément untel.

    Cela peut être utile d'ajouter le nom de l'élément pour augmenter la spécificité du sélecteur.

    Perso je ne le mentionne jamais sauf pour la raison 3

    Pour ta deuxième, j'ai du mal à imaginer que tu codes en css sans utiliser la descendance dans tes sélecteurs Cela permet de cibler précisément certains éléments en n'ajoutant des noms de class et d'id que lorsque c'est vraiment nécessaire.

  7. #7
    Membre habitué Avatar de pierre24
    Profil pro
    Inscrit en
    Février 2008
    Messages
    391
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 391
    Points : 160
    Points
    160
    Par défaut
    ok merci a vous deux !

    très clair Er3van !

    C'est plus clair !

    Par contre je savais qu'un ID était unique mais il m'arrive de les répéter !


    Qu'en est t-il ? ^^

  8. #8
    Membre chevronné Avatar de Er3van
    Homme Profil pro
    Architecte Logiciel
    Inscrit en
    Avril 2008
    Messages
    1 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte Logiciel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 430
    Points : 2 227
    Points
    2 227
    Par défaut
    De rien

    Pour ce qui est des id, ils sont uniques, mais ça ne t'empeche pas d'avoir plusieurs id différents.

    Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <div id='menu'> mon menu </div>
    <div id='content'> blabla </div>
    Ne pose aucun problème, dans ton css t'auras #menu et #content.

    Par contre,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <div id='menu'> mon menu </div>
    <div id='content'> blabla </div>
    <div id='content'> taratata </div>
    Est incorrecte, même si ça ne génère pas forcément d'erreur.

    C'est plus pour une question de lisibilité du code par un tiers.

    Les id sont pour les div à caractères uniques, et les class pour le reste. Si tu as un doute utilise des class, ça fonctionne pareil.
    Généralement, dans un site tu auras des blocs à caractères uniques, comme le menu, contenu, footer. D'autres div secondaires, même s'ils sont uniques, seront généralement nommés avec des class.

Discussions similaires

  1. Question sur la syntaxe des padding
    Par baggie dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 27/04/2010, 12h35
  2. Réponses: 1
    Dernier message: 04/05/2009, 09h31
  3. question sur le rafraichissement des données dans la base
    Par vbcasimir dans le forum Bases de données
    Réponses: 8
    Dernier message: 06/06/2005, 13h44
  4. question sur le comportement des threads
    Par rose-bonbon dans le forum CORBA
    Réponses: 4
    Dernier message: 27/10/2004, 19h00
  5. question sur le format des images ..
    Par vbcasimir dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 28/08/2003, 13h08

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