Le positionnement des div dans une div sans affecter la mise en page
J'ai un div
(div1
) qui a sa position, la largeur, la hauteur, tout ensemble, et il est défini à l'externe, donc je ne peux pas savoir à l'avance quelles sont ces valeurs.
À l'intérieur et en haut de div1
est un autre div
(div2
). Je veux div2
flotter sur le droit de div1
sans affecter les informations suivantes dans div1
.
Je peux ajouter l'attribut position:absolute
et obtenir div2
pour flotter et affecte pas le contenu, cependant, je ne peux pas obtenir de flotter sur le droit, même lors de l'application de float:right
.
OriginalL'auteur steveo225 | 2011-02-26
Vous devez vous connecter pour publier un commentaire.
Si je comprends bien:
Tout d'abord, appliquez
position: relative
à votrediv1
.Qu'il "ne fonctionne pas" quand vous avez à la fois
float: right
etposition: absolute
sur votrediv2
, vous devez remplacer lefloat: right
règle avecright: 0
.position:relative;float:right;
parce que cela affecte le contenu de la cellule. Je ne peux pas utiliserposition:absolute;right:0;
parce que div1 est positionné, et div2 est placé à l'extrême droite de la fenêtre.Comment est
div1
positionné? Avecposition: absolute
?Il est dynamique, défini à l'externe (via une requête AJAX de charge en fonction du contenu affiché). Le sens est peut être absolue, relative, ou tout simplement centré dans la fenêtre.
Alors je suggère de mettre une div avec position: relative en premier, puis le mettre en div2 avec position: absolute; right: 0;
Je ne pense pas que vous vous approchez de cette dans le droit chemin. Si vous êtes en train de charger en AJAX du contenu, vous avez sûrement idée de ce que c'est. Et si vous n'en avez pas vous pouvez utiliser Javascript pour savoir ce positionnement, le contenu chargé. Ou vous pourriez utiliser Javascript pour faire du positionnement. Ce que j'essaie de dire, c'est: vous n'êtes pas de nous donner suffisamment d'informations.
OriginalL'auteur thirtydot
essayez ceci:
position:absolute;right:0;
parce que div1 est positionné, et div2 est placé à l'extrême droite de la fenêtre.Comme thirtydot dit, vous devez vous assurer que div1 a position: relative;
Comme je l'ai dit, son style est défini à l'externe, donc je n'ai pas de contrôle. Je peux obtenir div2 flottant à droite, ou n'affectent pas le contenu, mais pas les deux
OriginalL'auteur nemophrost
avec juste le positionnement relatif?
êtes-vous en mesure de considérer le javascript pour le contrôle de la position et agir en conséquence?
Je peux le vérifier, mais je ne veux pas le changer, car il a l'air correct, et il y a trop de possibilités de vérifier et de les traiter tous.
OriginalL'auteur jenson-button-event
Avez-vous essayé de placer le reste du contenu de div1 dans une autre div, puis en définissant une largeur spécifiée sur div tout en gardant float:right sur div2. Sonne comme une barre latérale style de scénario.
OriginalL'auteur TheDeveloper