28172 sujets

CSS et mise en forme, CSS3

Slt

J'ai 2 problemes pour le centrage de texte :

1) Pour mes balises <p> j'ai fait un p {text-indent:30px;}. Mais dans la page contact ce texte

<p align="center">Association Hegalaldia<br />
Quartier Arrauntz, chemin Bereterrenborda<br />
64480 Ustaritz</p>

est decale quand je le centre. Comment je pourrais faire pour que le css de la balise <p< ne soit pas prit en compte par ce texte ??

2) Pourquoi avec p {text-align:justify;} la balise <p align="center">CHEQUE à l'ordre de "hegalaldia" et envoyez le à :</p> ne s'aligne pas ?

(Voir la page)

Merci d'avance pour votre aide.
Modifié par hegalaldia (04 Dec 2009 - 10:10)
D'abord, je te déconseille d'utiliser les attributs de mise en forme, comme align (les CSS sont là, justement, pour la mise en forme).

Ensuite, ajoute un id à ton paragraphe en question :
<p id="adresse">Association Hegalaldia<br />

Quartier Arrauntz, chemin Bereterrenborda<br />

64480 Ustaritz</p>

(assure-toi d'utiliser une valeur unique pour ton attribut id).

Enfin, ajoute dans ta feuille de style la règle suivante :
#adresse {
  /* On redéfinit l'alignement */
  text-align: center;
  /* On annule l'indentation du texte */
  text-indent: 0;
}

Le seul fait qu'on utilise un sélecteur d'id rend la règle définie par ce genre de sélecteur prioritaire par rapport à une règle définie par un simple sélecteur d'élément (autrement dit, la règle #adresse {} sera appliquée prioritairement par rapport à la règle p {}).

Pour ta culture, tu peux lire la section sur le calcul de la spécificité d'un sélecteur dans la spécification CSS 2.1.
Merci pour ta reponse. L'ID ne peut etre utilise qu'une seule fois dans une page, mais peut il etre utilise aussi dans une autre page ?
hegalaldia a écrit :
Merci pour ta reponse. L'ID ne peut etre utilise qu'une seule fois dans une page, mais peut il etre utilise aussi dans une autre page ?

L'id est unique au sein d'une même page. Rien ne t'empêche donc de réutiliser cette valeur dans d'autres pages (et heureusement... Smiley smile ).
Modifié par Victor BRITO (04 Dec 2009 - 10:02)
Je viens de me rendre compte que dans certaine page je vais devoir utiliser plusieurs fois ce centrage de balise <p>. C'est oblige d'utiliser une ID ? vue qu'on ne peut pas utiliser plusieurs fois la meme ID dans la page, car ca va m'obliger a en faire pour chaque balise.
Je ne comprend pas Victor, un id ne peut être attribué dans le css UNE SEULE FOIS d'accord.
Mais rien ne t'empêche d'utiliser l'id dans plusieurs balises <p> sur une même page. Le css interprétera les balises <p id="adresse"> la ou les id seront définis.

Et si ton <p> est contenu dans une boite rien ne t'empêche de faire ceci :


#conteneur p {}  


Pour redéfinir la balise p dans la boite uniquement (et uniquement dans celle ci ce qui aura pour effet de redéfinir uniquement la balise p contenu dans le <div id="conteneur">).

Si j'ai dis une connerie reprenez moi Smiley cligne


Cordialement , Rasta.
Rastahigh a écrit :
Mais rien ne t'empêche d'utiliser l'id dans plusieurs balises <p> sur une même page.

Un identifiant doit être unique. Si tu utilises plusieurs fois un <p id="adresse">, le validateur du W3C invalidera la page en te disant « ID "adresse" already defined ». Et là, tu me comprendras. Smiley cligne

En revanche, rien ne t'empêche d'écrire #adresse plusieurs fois dans un fichier CSS.

Pour illustrer mon propos, il y a un article sur la différence entre une classe et un id (une classe pouvant se répéter à l'infini).
Rastahigh a écrit :
Si j'ai dit une connerie reprenez-moi Smiley cligne

C'est fait. Smiley smile
Modifié par Victor BRITO (04 Dec 2009 - 13:12)