Highcharts chart option backgroundColor:'transparent' showing black on IE 8

CssInternet Explorer-8Cross BrowserHighcharts

Css Problem Overview


Highcharts chart option backgroundColor:'transparent' showing black on IE 8

histogram = new Highcharts.Chart({
            chart: { renderTo: 'histogram', defaultSeriesType: 'bar',
                     backgroundColor:'transparent'
            }

This works fine on I.E 9 and others but fails on I.E 8 and Safari anyone has any idea why ?

Css Solutions


Solution 1 - Css

Can you try this -

backgroundColor: null

See on: jsfiddle

Solution 2 - Css

Try this solution:

histogram = new Highcharts.Chart({
                chart: { renderTo: 'histogram', defaultSeriesType: 'bar',
                         backgroundColor:'rgba(255, 255, 255, 0.0)'
                }

Solution 3 - Css

I found this in Highcharts sources:
>Empirical lowest possible opacities for TRACKER_FILL

>- IE6: 0.002

  • IE7: 0.002
  • IE8: 0.002
  • IE9: 0.00000000001 (unlimited)
  • IE10: 0.0001 (exporting only)
  • FF: 0.00000000001 (unlimited)
  • Chrome: 0.000001
  • Safari: 0.000001
  • Opera: 0.00000000001 (unlimited)

>TRACKER_FILL = 'rgba(192,192,192,' + (hasSVG ? 0.0001 : 0.002) + ')'

So you can set the chart background color to 'rgba(255,255,255,0.002)' and it runs in the most important browsers.

Solution 4 - Css

backgroundColor: 'transparent' also working if you need type safety.

Solution 5 - Css

You should use this :

.highcharts-background {
   fill: transparent;
}

Documentation

Full example:

Highcharts.chart('container', {
    chart: {
        type: 'line',
        styledMode: true
    },
    title: {
        text: 'Chart border and background by CSS'
    },

    xAxis: {
        categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    },

    legend: {
        layout: 'vertical',
        floating: true,
        align: 'left',
        x: 100,
        verticalAlign: 'top',
        y: 70
    },
    series: [{
        data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
    }]
});

@import "https://code.highcharts.com/css/highcharts.css";

.highcharts-background {
    fill: #efefef;
    stroke: #a4edba;
    stroke-width: 2px;
}

<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/exporting.js"></script>

<div id="container" style="height: 400px"></div>

Solution 6 - Css

If you can access the highcharts.js file go to the backgroundColor line (around 479) and change line like backgroundColor:"rgba(255, 255, 255, 0)". It will change all backgrounds of the charts to transparent

Solution 7 - Css

May be you have to write

filter:0 !important;

in your css.

Solution 8 - Css

backgroundColor:'rgba(255, 255, 255, 0.0)',

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionNikshepView Question on Stackoverflow
Solution 1 - CssBhesh GurungView Answer on Stackoverflow
Solution 2 - CssMayureshView Answer on Stackoverflow
Solution 3 - Cssnessa.gpView Answer on Stackoverflow
Solution 4 - CssAttila CsányiView Answer on Stackoverflow
Solution 5 - CssinweidView Answer on Stackoverflow
Solution 6 - CssGrooveNowView Answer on Stackoverflow
Solution 7 - CsssandeepView Answer on Stackoverflow
Solution 8 - CssPankaj UpadhyayView Answer on Stackoverflow