Comment puis-je contrôler la largeur d'une étiquette?

La balise d'étiquette n'ont pas la propriété 'width', alors comment dois-je contrôler la largeur d'une étiquette?

129
demandé sur ziiweb 2010-05-12 20:04:15

6 réponses

En utilisant CSS, bien sûr...

label { display: block; width: 100px; }

L'attribut width est obsolète, et CSS doit toujours être utilisé pour contrôler ce genre de styles de présentation.

160
répondu Josh Stodola 2010-05-12 16:05:27

L'utilisation du bloc inline est préférable car elle ne force pas les éléments et/ou contrôles restants à être dessinés dans une nouvelle ligne.

label {
  width:200px;
  display: inline-block;
}
76
répondu M009 2016-05-04 20:58:09

Éléments en ligne (comme SPAN, LABEL, etc.) sont affichés de sorte que leur hauteur et leur largeur sont calculées par le navigateur en fonction de leur contenu. Si vous voulez contrôler la hauteur et la largeur, vous devez changer les blocs de ces éléments.

display: block; rend l'élément affiché comme un bloc solide (comme les balises DIV), ce qui signifie qu'il y a un saut de ligne après l'élément (il n'est pas inline). Bien que vous puissiez utiliser display: inline-block pour résoudre le problème du saut de ligne, Cette solution ne fonctionne pas dans IE6 car IE6 ne le fait pas reconnaître inline-bloc. Si vous voulez qu'il soit compatible avec tous les navigateurs, regardez cet article: http://webjazz.blogspot.com/2008/01/getting-inline-block-working-across.html

27
répondu Srka 2014-03-24 19:31:36

Donner de la largeur à L'étiquette n'est pas une bonne façon. vous devriez prendre une structure div ou table pour gérer cela. mais si vous ne voulez pas changer votre code entier, vous pouvez utiliser le code suivant.

label {
  width:200px;
  float: left;
}
4
répondu Yaxita Shah 2015-08-10 14:03:52
label {
  width:200px;
  display: inline-block;
}

OR 

label {
  width:200px;
  display: inline-flex;
}

OR 

label {
  width:200px;
  display: inline-table;
}
2
répondu shiny 2014-01-09 05:48:50

Vous pouvez soit donner un nom de classe à all label afin que tous puissent avoir la même largeur:

 .class-name {  width:200px;}

Exemple

.labelname{  width:200px;}

Ou vous pouvez simplement donner le reste de l'Étiquette

label {  width:200px;  display: inline-block;}
0
répondu Ajinkya 2016-01-21 07:36:37