Gradient-Unterstützung für IE 8 und unten
Fand ich ein tolles CSS - Farbverlauf-code-generator für eine Seite mein Freund macht, aber es gibt einige Kommentare darunter, die sich mit mir Gedanken machen:
/* For Internet Explorer 5.5 - 7 */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#cccccc, endColorstr=#ffffff);
/* For Internet Explorer 8 */
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#cccccc, endColorstr=#ffffff)";
background-color: #CCC;
Und in der Antwort:
Empfehle ich dringend, gegen diese! Handeln Sie nicht die gleichen, sind begrenzt, die Leistung beeinträchtigen und verursachen layout-Probleme. Einfach gesagt, seit der IE nicht unterstützt Farbverläufe (und viele andere CSS-Funktionen nativ, ohne filter), verwenden Sie entweder Bilder für den gleichen Effekt (background-image) oder überzeugen Sie Ihren Kunden, dass IE-Benutzer bekommen weniger Erfahrung (wer ernsthaft interessiert Verläufe vs einzelne Farben neben insane 'Designer'?) weil Ihr browser einfach nicht mit dem übereinstimmt, was wir als Entwickler wollen. Es nennt sich graceful degradation und IE sollte keine Ausnahme.
So, was ich nicht weiß ist: Sollte ich schlage vor, Sie tun/benutzen Sie keine dieser code? Immer ist der IE diesen code verwenden sinnlos/hoffnungslos?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den filter Zeug ist in der Regel als schlechte Praxis, und ist nicht valid CSS (also der stylesheet-Validierung fehl-tests)
es ist möglich, ein Hintergrundbild für das element in Frage, dann der IE fallback auf das Bild, wenn es eine version, die nicht unterstützt Gradienten, das schöne daran ist, dass Browser in der Unterstützung von Farbverläufen nicht laden Sie die hintergrund-Bild (naja, meistens), damit die Leistung nicht beeinträchtigt wird negativ.
Persönlich, wenn ich du wäre würde ich gehen für das Hintergrundbild-Lösung, es ist viel sauberer als der ganze "filter" - Sache, und nicht bestrafen Menschen nicht mit Internet Explorer (yay!)
Wenn Sie möchten mehr Details, siehe hier:
http://css-tricks.com/css3-gradients/
ie.css
. Wo hast du gelesen, dass "Das filter-Zeugs wird in der Regel als schlechte Praxis". Das ist deine persönliche Meinung.Ich bin mit http://www.colorzilla.com/gradient-editor/ zum erstellen von CSS-Verläufen. Der produzierte code es funktioniert sogar im IE 6+:
Also ja, Sie könnte verwenden Gradienten in MS IE.
filter
ist nicht Teil der CSS-Spezifikation – aber auf der anderen Seite war der IE 8 ist der erste Microsoft-browser für Windows zur Unterstützung von CSS 2.1. Also, wenn es um styling geht für MS IE ist mir egal, was jeder Spezifikation sagt. Sonst könnte ich nicht erstellen, CSS-layouts für diese Browser. (Dieser Kommentar war eine Antwort, aber der Kommentar wurde gelöscht...)Vier Jahre nachdem die Frage gestellt wurde, das Problem nicht Weg. Ich habe eine Menge von Websites für große Unternehmen, und Sie finden immer noch IE8 auf den corporate desktop, manchmal auch als das Unternehmen standard.
Meine Empfehlung wäre, diese Zeilen genau so, wie Sie angeboten werden. IE8 wird Sie benutzt, und jeder moderne browser ignorieren Sie. Es hält den designer glücklich, dass Sie die Umsetzung seiner design zum besten des Browsers, aber Sie nicht zu verwirren haben mit gestreiften hintergrund Bilder.