做過highcharts的都知道,highcharts圖表的寬和高是由它的容器div來決定的。即:
$('#container').highcharts({ chart: { type: 'area' }, //...... });
其中container爲一個div的id, 表明這個highcharts的顯示區域爲這個div的區域。
<div id="container" class="trend"></div>
但是,最近我在做的過程中,某個頁面無論對這個div怎樣設置寬高(百分比和具體數值都試過),這個highcharts都不能正確地顯示在其中。如圖:
紅色區域爲父容器div,灰色部分爲highcharts顯示的效果。
本來,這是一個不需要考慮的問題,但是現在出現了,卻覺得很麻煩。
後來,看到highcharts的charts有width和height屬性,於是我就我先用瀏覽器工具查看好父容器div的width和height,再將highcharts的charts裏面的width和height屬性跟其設置的一樣即可:
如我的容器div的的屬性如下:
.trend{width:1299px; height:214px}
那麼,我在highcharts裏就這樣設置:
$('#container').highcharts({ chart: { type: 'area', width:1299, height:214, marginRight:10;//留一點地兒給y軸上刻度的顯示 }, //...... });
這樣,就不會出現這個奇怪的問題了。
大部分情況下,這個問題是無需考慮的,可能有時候跟你所在平臺的前端環境有關。。