Comment puis-je faire de fond de taille de travail dans IE?
Est-il un moyen connu pour rendre le style CSS background-size
travail dans IE?
- Quel effet vous essayer d'obtenir?
- J'ai un div qui est d'environ 250 pixels de large. mais l'image de fond est 300px de large. Je veux que l'image d'arrière-plan pour adapter complètement (background-size:100%) de sorte qu'il n'est pas se couper. Puis sur
:hover
je veux que le fond de la taille de changer à la pleine 300px de largeur (background-size:auto) pour créer l'illusion de zoom - Vous pourriez obtenir le même effet en utilisant une balise img. Si vous avez besoin de quoi que ce soit sur le dessus de cela, utiliser le z-index.
- envisager une modification de la accepté de répondre si Dan la solution qui a fonctionné pour vous!
- La balise IMG est parfois inutile d'effets secondaires, par exemple, il peut être sélectionné ou clic droit. Parfois, ce sont OK, parfois pas.
Vous devez vous connecter pour publier un commentaire.
Un peu en retard, mais il pourrait aussi être utile. Il y a un IE filtre, pour IE 5.5+, que vous pouvez appliquer:
Cependant, cette échelle de l'ensemble de l'image pour l'ajuster à la zone allouée, donc si vous êtes à l'aide d'un sprite, cela pourrait provoquer des problèmes.
Spécifications: AlphaImageLoader Filtre @microsoft
position: relative; z-index: 999
pour l'entrée, un, bouton à l'intérieur de ces divsa {position: relative; z-index: 999}
pour faire les ancres de travail. z-index doit être d'un plus grand nombre.body
ouhtml
éléments, cette propriété peut briser le défilement, liens, et autres page interactions.J'ai créé jquery.backgroundSize.js: 1,5 K plugin jquery qui peut être utilisé comme un IE8 secours pour "couvrir" et "contenir" des valeurs. Jetez un oeil à la démo.
background-position: fixed
.Grâce à ce post, mon css pour la croix-navigateur bonheur est:
Il a été si longtemps depuis que j'ai travaillé sur ce morceau de code, mais je tiens à ajouter pour plus de compatibilité avec les navigateurs que j'ai ajouté à mon CSS pour plus de compatibilité avec les navigateurs:
-webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover;
Même plus tard, mais cela pourrait être utile aussi. Il y a jQuery backstretch-plugin que vous pouvez utiliser comme un polyfill pour background-size: cover. J'imagine que ça doit être possible (et assez simple) pour attraper les feuilles de style css background-propriété de l'url avec jQuery et le nourrir à la jQuery-backstretch plugin. Une bonne pratique serait de tester pour le fond de la taille du support avec modernizr et de l'utilisation de ce plugin comme une solution de repli.
La backstretch-plugin a été mentionné sur DONC ici.Le jQuery-backstretch-plugin-site est ici.
De la même manière, vous pourriez faire un jQuery-plugin ou un script qui fait le fond de la taille d'un travail dans votre situation (background-size: 100%) et IE8-. Donc, pour répondre à votre question: Oui, il y a un chemin, mais l'atm, il n'y a pas de plug-and-play " (c'est à dire que vous avez à faire un peu de codage de même).
(disclaimer: je n'ai pas examiner la backstretch-plugin à fond, mais il semble faire la même chose que background-size: cover)
Il y a une bonne polyfill pour que: louisremi/background-size-polyfill
De citer la documentation:
contain
etcover
. Il contient 5.7 KB pas très mauvais, car il sera de transfert dans un réseau de paquets.Dans IE11 Windows 7 cela a fonctionné pour moi,
vous pouvez utiliser ce fichier
(https://github.com/louisremi/background-size-polyfill “background-size polyfill”) pour IE8 qui est vraiment simple à utiliser:
J'ai essayé avec le script suivant -
Il a travaillé pour moi!