[CSS] - Fixer une largeur de div minimale ?

- Fixer une largeur de div minimale ? [CSS] - HTML/CSS - Programmation

Marsh Posté le 10-11-2005 à 16:25:29    

Bonjour,
 
J'aimerais savoir qu'elle est la meilleur façon de fixer une div de largeur minimale. Je m'explique : je crée une div destinée à recevoir une chaine de caractère, je lui fixe par exemple 50 pixels de largeur, par défaut. Ainsi, si le texte est très cours, elle aura quand même 50px de largeur au minimum. Mais je voudrais aussi que la div s'élargisse au cas où le texte dépasse les 50 pixels.
 
J'ai utilisé pour cela le tag min-width, mais qui fonctionne QUE avec Mozilla. Donc, pour IE, je suis obligé de faire ca pas très proprement :
 

Code :
  1. .my_div {
  2. ! width:50px;
  3. min-width:50px;
  4. }
  5. <div class="my_div">Tiny</div>
  6. <div class="my_div">A very big big big big string for a big big big div</div>


Donc, première question : existe-t-il un autre moyen plus propre et plus conforme pour réaliser cette petite opération ? Vous allez me dire, autant fixer une largeur fixe, oui mais je ne connais pas à l'avance la taille de ma chaine de caractère, qui peux varier du simple au triple [cligne] Je pourrais faire des calculs en PHP afin de déterminer la taille de ma div, mais avant d'en arriver à cette extremité, je cherche une solution plus simple  :)
 
Deuxième question : là où la première question prend tout son intérêt, c'est lorsque que l'on combine deux div de ce type, la deuxième embriquée dans la première.
 
Je m'explique : la chaine de caractère se trouve dans la deuxième div, qui se trouve dans la première. Je dois donc fixer un min-width aux deux div, pour que les DEUX s'élargissent. Et là, du peux que j'ai testé (en me tirant les cheveux), ca foire totalement sous IE ainsi qu'avec Opera. Seul Mozilla, qui accepte le min-width, affiche correctement mes div élargies.
 
Bref, à l'aide, je coule :(

Reply

Marsh Posté le 10-11-2005 à 16:25:29   

Reply

Marsh Posté le 10-11-2005 à 16:34:14    

IE6 et inférieur ne conait ni min-width ni max-width.
Il faut donc faire par exemple :

Code :
  1. .my_div {
  2.     min-width:50px;
  3.     _width:50px;
  4. }

De cette maniére, seul IE prendra en compte le width.
 
EDIT : PS : Pour Opera, en fait, je sais pas comment il les gére.

Message cité 1 fois
Message édité par omega2 le 10-11-2005 à 16:35:38
Reply

Marsh Posté le 10-11-2005 à 16:38:03    

omega2 a écrit :

De cette maniére, seul IE prendra en compte le width.

C'est exactement ce que j'ai cité dans ma question :p Je cherche justement une autre méthode ;)

Reply

Marsh Posté le 10-11-2005 à 16:45:56    

passer à IE7? (je sais pas encore prés) Ben quoi c'est le navigateur qu'est trop vieux et on peut pas changer sa non prise en charge d'une bonne partie de la norme css. :(
 
A ma conaisssance, il y a pas de méthode plus propre que ce que t'as essayé.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed