Spécifier left et right en css, donne une largeur par défa
Spécifier left et right en css, donne une largeur par défa
Il est bien connu qu'en ccs, il faut éviter de spécifier ensemble les positions left et right, car cela peut provoquer un conflit avec lar largeur également spécifiée. Dans ce cas, c'est le navigateur qui tranche, et le résultat n'est donc pas prévisible.
Mais j'ai remarqué que si je donne left et right, sans pourtant donner width, alors sous FireFoxe et InternetExplorer, le résultat est le même : les deux donne à la boite une largeure par défaut, égale au contenu de la boite!
Pire même, FireFox modifie même la hauteur de la boite (en l'augmentant), ce que InternetExplorer ne fait pas.
Quelqu'un connait ce phénomène ?
Mais j'ai remarqué que si je donne left et right, sans pourtant donner width, alors sous FireFoxe et InternetExplorer, le résultat est le même : les deux donne à la boite une largeure par défaut, égale au contenu de la boite!
Pire même, FireFox modifie même la hauteur de la boite (en l'augmentant), ce que InternetExplorer ne fait pas.
Quelqu'un connait ce phénomène ?
Re: Spécifier left et right en css, donne une largeur par d
Il est tout à fait prévisible, l’algorithme de calcul est détaillé au chapitre 10 de la recommandation:hibou57 a écrit :Il est bien connu qu'en ccs, il faut éviter de spécifier ensemble les positions left et right, car cela peut provoquer un conflit avec lar largeur également spécifiée. Dans ce cas, c'est le navigateur qui tranche, et le résultat n'est donc pas prévisible.
http://www.yoyodesign.org/doc/w3c/css2/ ... aced-width
Ici, on sera confronté à la règle n°7 et la propriété right doit être ignorée.
« La vie d’un geek est un combat perpétuel contre l’imperfection »
J'ai vérifié, si je cré une boite en position absolue, je peux donné left et right, si je ne donne pas la largeur, car alors la largeur sera auto. Cela est conforme aux règles que tu donne, et j'ai essayé, ça fonctionne. Il est donc bien possible de fournire left et right, si on ne donne pas width.
Le problème est que je voudrais faire cela, avec une boite qui ne serait pas en absolute.
Le plus simple et que je donne une exemple.
La boite 1 est en float.
Je voudrais que la boite 2 incluse dans la boite 1, soit positionné dans la boite 1, et que sa marge droite soit à un em du bord de la boite 1, et idem pour la marge gauche.
J'y arrive avec une boite en positions absolues incluyse dans body, mais si je fais la même chose en incluant la boite dans une autre boite en float, alors ça ne marche plus.
Si je met la boite 2 en absolute, elle n'est plus positionné dans la boite 1.
S'il n'y a pas de solutiions, c'est pas grave, je touverai autre chose...
Merci quand même
Le problème est que je voudrais faire cela, avec une boite qui ne serait pas en absolute.
Le plus simple et que je donne une exemple.
Code : Tout sélectionner
+-------------------------------------------------+
| Boite 1 |
| +-------------------------------------------+ |
| | Boite 2 | |
| +-------------------------------------------+ |
| |
+-------------------------------------------------+
|--| 1em 1em |--|
Je voudrais que la boite 2 incluse dans la boite 1, soit positionné dans la boite 1, et que sa marge droite soit à un em du bord de la boite 1, et idem pour la marge gauche.
J'y arrive avec une boite en positions absolues incluyse dans body, mais si je fais la même chose en incluant la boite dans une autre boite en float, alors ça ne marche plus.
Si je met la boite 2 en absolute, elle n'est plus positionné dans la boite 1.
S'il n'y a pas de solutiions, c'est pas grave, je touverai autre chose...
Merci quand même
Le calcul de positionnement absolu des boîtes se fait toujours par défaut par rapport à l’élément racine (<html/>), sauf si le bloc conteneur (ici la boîte 1) est en position relative. Dans ce cas, le positionnement absolu des boîtes descendantes de boîte 1 se fait par rapport à celle-ci.
Par contre, je ne peux pas confirmer si une boîte peut flotter et être en position relative.
Par contre, je ne peux pas confirmer si une boîte peut flotter et être en position relative.
« La vie d’un geek est un combat perpétuel contre l’imperfection »
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité