Twitter Bootstrap - la barre de navigation de problèmes dans internet explorer
Je suis en utilisant Twitter Bootstrap dans mon application rails. Ma navbar semble parfait dans Firefox /Chrome /Safari (testé chrome sur un Mac & PC). Dans Internet Explorer, il semble laid! Des couleurs fausses & tout.
Toute aide que vous pouvez fournir serait appréciée. Je peux poster le code que pourrait l'aider.
Mise à jour
Voici toutes les CSS où je remplace rien de bootstrap (mis dans mon application via le sass-gem rails). Nous espérons qu'il nous pousse dans la bonne direction.
Note: Lorsque j'ai color:#F8F8F8;
ci-dessous, j'ai utilisé #333
. C'est juste une itération de moi pour tenter d'y remédier. J'ai même essayé de changer la couleur d'arrière-plan à #333334
que je pense que mon précompilateur était en train de changer #333333
à #333
(ne sais pas pour vous mais)
/* Styling */
.navbar, .navbar-inner, .navbar-fixed-top, .container, #tabs .nav {
border:none;
background-image:none;
}
.navbar {
font-size:14px;
text-shadow:none;
-webkit-box-shadow: none;
-moz-box-shadow: none;
box-shadow: none;
.nav {
float:right;
}
.brand {
margin-left:30px;
color:#333334;
font-family: Georgia, serif
}
.navbar-inner {
background-color: #F8F8F8;
border-bottom-color: #E0E0E0;
border-bottom-style: solid;
border-bottom-width: 1px;
color: #333334;
}
}
.navbar .nav > li > a {
text-shadow:none;
color:#555555;
background-color: transparent;
cursor:pointer;
&:hover {
color:#E6E6E6;
}
}
.navbar .nav .active > a, .navbar .nav .active > a:hover {
background-color: transparent;
color: #555555;
}
.navbar .nav .inactive > a:hover {
color:#999999;
}
.navbar .nav > li > a.sign-in {
color:#555555;
padding-top:4px;
padding-bottom:4px;
margin-top:5px;
margin-left:30px;
}
.navbar .nav > li > a.sign-in:hover {
background-position: 0 0px;
}
.navbar .nav > li > a.active-button {
background-color: #E6E6E6;
background-image: none;
border:1px solid #cccccc;
border-radius:4px;
box-shadow: none;
cursor: pointer;
opacity: 0.6499999761581421;
outline-color: #555555;
outline-style: none;
outline-width: 0px;
text-decoration: none;
text-shadow: none;
padding-top:4px;
padding-bottom:4px;
margin-top:5px;
}
J'ai aussi essayé le suivant (dans une tentative pour remplacer explicitement quelque chose à faire avec des dégradés de "Bootstrap"):
body {
color:#333334;
}
.navbar-inner {
background-image: -moz-linear-gradient(top, #F8F8F8, #F8F8F8);
background-image: -ms-linear-gradient(top, #F8F8F8, #F8F8F8);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#F8F8F8), to(#F8F8F8));
background-image: -webkit-linear-gradient(top, #F8F8F8, #F8F8F8);
background-image: -o-linear-gradient(top, #F8F8F8, #F8F8F8);
background-image: linear-gradient(top, #F8F8F8, #F8F8F8);
}
.btn-navbar {
background-image: -moz-linear-gradient(top, #F8F8F8, #F8F8F8);
background-image: -ms-linear-gradient(top, #F8F8F8, #F8F8F8);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#F8F8F8), to(#F8F8F8));
background-image: -webkit-linear-gradient(top, #F8F8F8, #F8F8F8);
background-image: -o-linear-gradient(top, #F8F8F8, #F8F8F8);
background-image: linear-gradient(top, #F8F8F8, #F8F8F8);
}
Encore une autre mise à jour
De bidouiller avec internet explorer outils de développeur m'amène à croire que la question est: est-ce
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF333333',endColorstr='#F2222222', GradientType=0)
Qu'est-ce que cela? Ai-je besoin? (Pourquoi ne pas utiliser les mêmes gradients comme firefox/chrome?) Il s'agit de Bootstrap... je peux essayer de remplacer les couleurs là parce que, pour quelque raison que ce soit IE est l'interprétation FF333333
que le bleu foncé.
- poster du code, de sorte que nous pouvons prendre un coup d'oeil.
- Va jeter un tas de pertinent CSS... j'espère que ça aide!
- toutes les pensées? Encore du mal!
- Nous avons besoin de plus d'info de travail, le css vous postd n'est pas assez.
- Essayez
filter:none
sur votre barre de navigation (totalement oublié à ce sujet), c'est à dire utilise une syntaxe pour générer des gradients.background-image
est toujours pas pris en charge par IE9 pour créer des dégradés. - Tellement frustrant que quelque chose de si petit, il faut tellement de temps pour le fixer! Merci beaucoup pour votre aide. Allez poster une réponse avec exactement le code que j'ai utilisé pour remplacer le filtre, mais un ÉNORME taux pour vous!
- J'ai un code identique que le vôtre, mais j'ai la barre bleue dans la production et un bon développement. Je pense que la minification est source de confusion, c'est à dire.
- J'ai eu ce problème lorsque j'ai utilisé stylebootstrap.info, qui est un outil formidable, d'autres que c'est la cause du problème que vous décrivez ci-dessous dans votre solution.
- Ce fichier bootstrap a la ligne incriminée 'filter:progid...'?
Vous devez vous connecter pour publier un commentaire.
S'avère que j'ai été en mesure de corriger cela en plus de l'équitation, le filtre par défaut le code généré par Bootstrap. Un grand merci pour Nathan et Andres! Pour remplacer le code que j'avais posté plus haut, j'ai ajouté ce qui suit :
Espère que cela permet de gagner de la douleur de quelqu'un....
Andres Ilich a commenté sur l'OP:
Après un développement très douloureux front de claquer de nombreuses fois sur le bureau, c'est exactement qu'est-ce résolu le problème pour moi. Grâce Andres.
Ce qui est arrivé à moi aussi. Mais j'ai trouvé que dans des gradients CSS, c'est à dire (voire 9) ne semble pas sauf à seulement 3 caractères des codes HEX. Si vous avez besoin de changer les codes hex à 3 caractères au lieu de cela, s'ils ne sont pas déjà (comme
#CCC
à#CCCCCC
) donc ça va fonctionner correctement dans IE (uniquement pour les IE dégradé CSS, pas tous d'entre eux).Si vous pouviez poster votre CSS, je pourrais voir si il y a d'autres problèmes. Mais, mon problème était que
#CCC
était interprétée comme le bleu foncé dans IE.De ce que je peux dire, vous êtes à l'aide d'un solide de couleur pour l'arrière-plan dans la barre de navigation en haut, de sorte que vous ne faites qu'ajouter une couleur d'arrière-plan mais ne pas enlever l'image de fond d'écran en tant que bien, alors essayez de réinitialiser que trop, de cette façon:
Internet Explorer est assez bonne à gâcher les choses jusqu'à ce que j'ai l'habitude de faire est d'utiliser une feuille de style séparée afin de corriger les explorer sans avoir à remodeler le reste de mon site. Coller cette ligne de code dans vos pages web:
et de modifier le css pour faire une meilleure apparence à explorer, et de la bonne partie est d'autres navigateurs ignorer cette feuille de style.
C'est beaucoup plus simple: