2012-03-29 6 views
-1

Ich arbeite an einem der Opensource-Projekte. Ich stehe vor einem seltsamen Problem. Wenn ich die Website in Firefox oder Chrome öffne, zeigt es die Farbe an, die ich erwarte, aber auf IE wird es nicht in dieser Farbe angezeigt (es zeigt sehr helle Farbe). Meine Vermutung ist, dass dies aufgrund des Gradienten geschieht, den ich benutze und den IE nicht korrekt interpretieren kann. Hier Gradient CSS-Code:Warum Anzeige unterschiedlicher Farbverlauf auf IE, funktioniert aber perfekt auf Firefox und Chrome?

#mainmenu { 
    #css3_backgroundLinearGradient({ 
    'angle': 'top', 
    'colors': [ 
     {'color': '#77D3F8', 'position': '0%'}, 
     {'color': '#3FA4D8', 'position': '100%'} 
    ] 
    }) 
    box-shadow: 0px 1px 2px $theme.linkColor; 
} 

Wenn ich die Ansicht Quelle auf der Webseite zu tun, ich sehe auch eine Linie heißt:

<div class="gradientfilterIE"></div>. 

Ich bin nicht sicher, ist diese Linie der Schuldige? Aber das komplette Open-Source-Projekt Quellcode hat diese Zeile nicht mit gradientfilterIE. Ich bin mir nicht sicher, ob diese Linie das Problem verursacht, woher kommt es dann?

Ich brauche Ihre Expertenmeinung, warum ich verschiedene Farbverlauf auf IE sehe aber funktioniert perfekt auf Firefox und Chrome.

Festlegen dieses tatsächlich mein Problem gelöst:

#mainmenu .gradientfilterIE { 
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#77D3F8',  endColorstr='#3FA4D8',GradientType=0); 
} 

benötigen wir filter: progid:DXImageTransform.Microsoft.gradient nur für IE? Da auf Firefox und Chrome, ohne dies funktioniert es auch gut.

+0

Verwenden Sie einen CSS-Compiler wie LESS oder ähnlich? Wenn ja, welcher? – Sirko

+1

Wenn ich eine wilde Vermutung nehmen könnte, verwendet dies die Velocity-Engine für Java? Und wir sollten von "einem der Opensource-Projekte" wissen, dass es das ist? –

+0

Ja ist es Velocity-Engine für Java. Opensource ist Xwiki. Ich habe es nicht genannt, weil ich nicht wollte, dass die Diskussion auf xwiki gerichtet ist. –

Antwort

0

Farbverläufe funktionieren nur in modernen Browsern und nicht in IE, aber das von Ihnen angezeigte CSS ist an erster Stelle ungültig.

+0

Hi rob das CSS funktioniert gut in Firefox und Chrome. Sieht nicht so aus, als gäbe es kein Problem in CSS. –

+0

@MSach Dieses CSS funktioniert nur, weil es vor der Bereitstellung in einem Browser kompiliert wurde. Wenn Sie dies direkt in ein HTML-Dokument einfügen würden, würden Sie viele Fehler und Warnungen vom CSS-Parser erhalten. – Sirko

+0

Das ist völlig richtig. Entschuldigung, ich war mir dieser Geschwindigkeitsmotor vor –

Verwandte Themen