28173 sujets

CSS et mise en forme, CSS3

Bonjour à tous,

Voici un problème récurrent qui commence à m'ennuyer... Je cherche à fixer la largeur (même problème pour la hauteur évidemment) d'un <div> de sorte que même si le texte est plus petit, le bloc fera la taille demandée. Tout ça pour des raisons esthétiques principalement. Exemple résumé :

HTLM :

  <div class="barreZone">
    <a href="javascript:g_page.NewFile()">Nouveau</a>
    <a href="javascript:g_page.LoadFile()">Ouvrir</a>
    <div class="sep1"></div>
    Informations g&eacute;n&eacute;rales
  </div>


CSS :

.barreZone {
background-color : dimgray;
  border-style : solid;
  border-color : black;
  border-width : 1px;
  height : 15px;
}

.barreZone a {
  border-style : solid;
  border-width : 1px;
  border-color : #FFF;
  color : white;
  text-align : center;
  text-decoration : none;
}


Pb : impossible de faire "fonctionner" les styles height et width sur les .barreZone a : les blocs de texte ont toujours la taille minimale. Idem si je place chaque lien dans un div avec classe et css. Je ne comprends pas pourquoi...
Modifié par Herode (22 Jun 2006 - 16:40)
Salut,
tu ne peut pas donner de taille a un element de type en ligne comme un a , a moins de le passer en display:block.

C'est de toutes façons plus logique de specifier une taille a l'element qui le contient, un <p> ou un <div> qui eux sont de types blocs et peuvent recevoir des dimensions.
CSS

.barreZone {
width: 400px;
height: 700px;
}


HTML
<div class="barreZone">

    <p>Blablablablablablablabla</p>

  </div>

Modifié par Hum (22 Jun 2006 - 18:53)
Ok, merci pour cette précision ! Smiley smile

Donc si je comprends bien, les indications de taille pour mes <div> ne fonctionnent pas à cause du "display:inline" que je leur affectais. En ce cas, y-a-t-il d'autres moyens que de passer par un tableau HTML quand on veut une série de cellules de taille définie et constante ?
En effet, je n'avais pas repéré ce lien. Je vais examiner tout ça de plus près, ça m'a l'air tout à fait instructif.

Merci à tous les deux pour vos réponses ! Smiley biggrin