CSS position:fixed positionné à l'intérieur d'un élément

J'ai positionné div dont le contenu peut être trop long donc les barres de défilement apparaissent (overflow:auto set). Il fonctionne comme une boîte de dialogue dans une application ajax. Je tiens à corriger un bouton de fermeture sur le coin en haut à droite ainsi, lorsque l'utilisateur fait défiler la div ne pas défilement.

J'ai essayé avec position:fixed; right:0; top:0 mais il a placé le bouton en haut à droite de la page, pas dans la div (dans firefox).

Est-il possible de ce faire, l'emplacement des boutons à l'aide de CSS sans le piratage avec le offsetWidth/Hauteur en js sur chaque événement scroll?

ps: le div de la hauteur et la largeur n'est pas une valeur fixe, il dépend de la taille et de la fenêtre du navigateur de la taille. L'utilisateur peut également redimensionner si il veulent.

  • Il pourrait être utile d'envisager d'utiliser un div avec une position fixe de l'image de fond pour le bouton.
  • semble être une bonne idée, mais comment voulez-vous cliquez sur le bouton alors?
  • Aussi longtemps que la hauteur et la largeur de la div sont définies pour correspondre à celle de l'image d'arrière-plan, il doit être cliquable. Pour la gestion de la cliquez sur, cela dépend si vous êtes à l'aide de HTML ou JS. Si c'est juste du HTML, vous pouvez envelopper le div dans un a étiquette avec un href (ou même simplement utiliser un a balise au lieu d'un div et le définir comme display: inline-block). Si c'est du JS, vous pouvez écouter un clic sur le div. Ai-je bien compris votre question correctement?
  • oui, je crois que vous avez fait merci, mais la hauteur et la largeur sera "réglé pour correspondre à" utilisation de JS aussi, je suppose? comme dans le cas des OP question de "la div, la hauteur et la largeur n'est pas une valeur fixe", c'est pourquoi je me demandais
  • Je vois. J'ai raté cette partie. Dans ce cas, je pense que vous avez raison, certains JS aurait pour gérer la taille de la div.
InformationsquelleAutor Calmarius | 2011-02-10