IE7 barre de Défilement ne fonctionne pas
Je suis la correction des bugs pour IE7 et cela m'a déconcerté. Le contenu de cette page est plus grande que la div contenant. IE7 est bien l'affichage d'une barre de défilement verticale, mais le contenu est d'obtenir sur le dessus de la barre de défilement verticale et lorsque l'utilisateur clique sur le bouton de défilement du contenu ne bouge pas. Je ne peux pas imaginer quelle en est la cause. Des Idées?
EDIT: j'Ai joint une capture d'écran du problème:
le texte d'alt http://img31.imageshack.us/img31/605/picture5kw.png
Obtenir IE8, puis allumez l'outil de développeur, passez en mode IE7, et avoir un regard sur les différents éléments et leur CSS. Il n'y a rien qui a attiré mon oeil, à première vue, mais...
Ne peux pas, j'utilise un mac et je n'ai pas accès à parallels droit maintenant. Aussi, j'ai changé la page d'exemple ci-dessus à une page qui nécessite des barres de défilement.
Ne peux pas, j'utilise un mac et je n'ai pas accès à parallels droit maintenant. Aussi, j'ai changé la page d'exemple ci-dessus à une page qui nécessite des barres de défilement.
OriginalL'auteur Thomas | 2010-06-22
Vous devez vous connecter pour publier un commentaire.
Je pense que c'est parce que IE7 et IE6 ne sont pas l'interprétation de votre
overflow-x
etoverflow-y
propriétés correctement:c'est facile à expliquer pour IE6: Il ne le sait pas ces attributs. Quant à savoir pourquoi il ne fonctionne pas dans IE7, peut-être que l'explication est ici (C'est trop compliqué pour moi de comprendre, je n'ai pas mangé le déjeuner encore).
Je pense que ce qui pourrait fonctionner (après un très examen rapide de votre code, de ne pas me poursuivre en justice si elle ne l'est pas) est d'introduire un supplément de
div
conteneur, sans largeur. Que serait de s'auto-ajuster toutwidth: 100%
éléments à l'intérieur d'une manière qui évite les débordements. (Je suppose que c'est un problème en premier lieu le modèle de boîte questions en conjonction avecmargin-left: 20px
, correct?)Je pense que votre problème est que vous ne pouvez pas contrôler le x et le y de débordement dans un DIV de façon fiable dans IE < 8. Par conséquent, de la distribuer sur les deux DIVs.
il pourrait être, cependant, que votre problème est résolu simplement en enlevant tous les
float: left
s. Quels sont-ils de toute façon?et pourquoi est -
grey_box
position: relative? Pouvez-vous essayer et de le supprimer?Ok, donc il était en position:relative qui a été à l'origine des problèmes. J'ai été en utilisant la position par rapport à la place d'un couple d'éléments en position absolue, mais je vais juste essayer de le fourrer dans certaines classe supplémentaire pour le contrôle. Merci!
OriginalL'auteur Pekka 웃
Appliquer
position: relative
de récipient avec la propriété overflow-y:auto;par exemple
Solution ci-dessus fonctionne pour moi.
OriginalL'auteur coder
Est-il possible de définir la largeur de
.grey_box
à codée en dur510px
? Parce qu'on dirait que IE7 est le seul qui obtient ce droit, depuis#content_box
est fixé à530px
avec10px
rembourrage, ce qui rendrait toutes les cases à l'intérieur de520px
de large, et qui est quelque part dans la barre de défilement. Pekka peut-être dans quelque chose d'aussi bien, avec IE7 et IE6 ne pas mettre en œuvre les débordements correctement.OriginalL'auteur peirix