filter: blur(1px); funktioniert nicht in Firefox, Internet Explorer und Opera
Ich habe ein problem mit CSS. Wenn ich versuche zu tun
-webkit-filter: blur(1px);
-moz-filter: blur(1px);
-ms-filter: blur(1px);
-o-filter: blur(1px);
filter: blur(1px);
es sieht perfekt in Safari und Chrome, aber die Unschärfe nicht zeigen, bis auf allen in Firefox, Opera oder Internet Explorer. Diese Browser unterstützen es? Oder gibt es eine andere Methode, die gesamte Seite zu verwischen?
- Jetzt funktioniert es in Firefox35+
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen mit SVG-filter.
CSS:
HTML:
feGaussianBlur stdDeviation="3"></feGaussianBlur>
.utf9
im inline-Daten wirklich korrekt? Habe es nicht probiert...Hier ist ein neuer blur-Technik, die funktioniert in allen Browsern (einschließlich Internet Explorer 10/11) und erfordert keine Filter, canvas oder JavaScript.
Die grundlegende Technik ist, verkleinere die Bildgröße, und dann mit einem 3D-scaling-matrix auf der übergeordneten zoomt zurück, um volle Größe. Diesem effektiv Downsampling des Bildes und hat eine grobe Unschärfe-Effekt.
CSS:
HTML:
Demo:
http://codepen.io/rkogan/pen/jPdGoM/
Ich habe versucht, alle oben genannten Methoden, aber-wie üblich-Internet Explorer /Microsoft Edge wollte, Dinge anders zu machen, so ich konnte es nicht konsistent.
Am Ende hatte ich zu springen, durch eine Reihe von Reifen zu bekommen, es funktioniert, wie ich wollte, für alle modernen Browser:
Verwenden Sie die CSS bereits erwähnt, so dass es funktionieren würde, auf nicht-IE-Browser, ohne den Aufwand für das Update musste ich für den IE:
Erkennen, ob Internet Explorer /Microsoft Edge verwendet wurde, die mit diese JavaScript (danke Mario).
Wenn Internet Explorer /Microsoft Edge erkannt wurde, dann laden Sie das Bild in eine versteckte
img
Feld auf der Seite. Sie haben, dies zu tun mit deronload
Funktion stellen Sie sicher, dass das Bild geladen hat, bevor Sie den Betrieb auf, die es sonst im nächsten Schritt fehlschlägt (danke Josh Stodola):Verwenden StackBlur JavaScript, das funktioniert unter IE und Edge (Dank Mario Klingemann). Das Bild sollte CORS.
HTML:
JavaScript:
Wie es passiert, ich wollte das set als hintergrund, also musste ich konvertieren Sie das Bild vor dem einstellen der Daten (Dank user3817470):
Einmal geladen und verschwommen ich dann verblasst es in mit Hilfe von CSS und ein Transparenz-Klasse wie jQuery
fadeTo
war nicht auf der Suche großen (Dank Rich Bradshaw):Puh, ich glaube, ich brauche einen Tee Pause (oder vielleicht etwas, was viel stärker!).
Ein Beispiel, dass es funktioniert (Dank Alex78191):
JS:
CSS:
HTML:
Das klingt ungefähr richtig, und es wird derzeit unterstützt:
Referenz
Hier ist ein Artikel von David Walsh (funktioniert bei Mozilla) auf Internet Explorer-spezifischen filtern, zum Beispiel t-motion blur:
Sieht es aus wie normale Unschärfe Unterstützung ist lückenhaft mit Internet Explorer, obwohl, und ich bin nicht überrascht, vor allem vor der 9.
Können Sie eine SVG-blur-filter in Gecko-basierten Browsern. Aber die Sache, die Sie haben oben WebKit-only und nicht standardisiert, so dass niemand sonst es unterstützt.