diff --git a/lib/themeroller.js b/lib/themeroller.js index 98544c7..21e3b50 100644 --- a/lib/themeroller.js +++ b/lib/themeroller.js @@ -98,16 +98,18 @@ function ThemeRoller( baseThemeCss, vars, options ) { vars.opacityShadowPerc = vars.opacityShadow; if ( options.version && semver.lt( options.version, "1.10.0" ) ) { - // For version < 1.10.0, opacity (w3c) and filter (IE) are combined into the same line. + // For version <1.10.0, opacity (w3c) and filter (IE) are combined + // into the same line. opacityFix = function( opacity ) { return /* w3c */ ( opacity / 100 ).toString().replace( /^0\./, "." ) + /* IE */ ";filter:Alpha(Opacity=" + opacity + ")"; }; vars.opacityOverlay = opacityFix( vars.opacityOverlay ); vars.opacityShadow = opacityFix( vars.opacityShadow ); - } else { + } else if ( options.version && semver.lt( options.version, "1.13.0" ) ) { - // For version >= 1.10.0, filter has its own separate line and variable name. + // For version >=1.10.0, `filter` has its own separate line + // and variable name. opacityFix = function( opacity ) { return ( opacity / 100 ).toString().replace( /^0\./, "." ); }; @@ -118,6 +120,21 @@ function ThemeRoller( baseThemeCss, vars, options ) { vars.opacityFilterShadow = opacityFilter( vars.opacityShadow ); vars.opacityOverlay = opacityFix( vars.opacityOverlay ); vars.opacityShadow = opacityFix( vars.opacityShadow ); + + } else { + + // For version >=1.13.0, `-ms-filter` has its own separate line + // and variable name. + opacityFix = function( opacity ) { + return ( opacity / 100 ).toString().replace( /^0\./, "." ); + }; + opacityFilter = function( opacity ) { + return "\"alpha(opacity=" + opacity + ")\""; + }; + vars.opacityFilterOverlay = opacityFilter( vars.opacityOverlay ); + vars.opacityFilterShadow = opacityFilter( vars.opacityShadow ); + vars.opacityOverlay = opacityFix( vars.opacityOverlay ); + vars.opacityShadow = opacityFix( vars.opacityShadow ); } // Add '#' in the beginning of the colors if needed diff --git a/test/fixtures/jquery-ui-1.13.2/themes/smoothness.css b/test/fixtures/jquery-ui-1.13.2/themes/smoothness.css index e4fa82c..8388761 100644 --- a/test/fixtures/jquery-ui-1.13.2/themes/smoothness.css +++ b/test/fixtures/jquery-ui-1.13.2/themes/smoothness.css @@ -438,7 +438,7 @@ a.ui-button:active, .ui-widget-overlay { background: #aaaaaa; opacity: .3; - -ms-filter: Alpha(Opacity=30); /* support: IE8 */ + -ms-filter: "alpha(opacity=30)"; /* support: IE8 */ } .ui-widget-shadow { -webkit-box-shadow: -8px -8px 8px #aaaaaa;