IE對SVG支援不好
使用svg來繪製圖形確實很方便,就是生成xml檔案,在其中用text指定生成文字,circle生成圓,用line生成直線等等。
可是這個標準卻不被IE很好的支援。在IE6中,需要裝一個Adobe的svgviewer瀏覽器外掛,才能瀏覽。
這次客戶端都升級到了ie7,ie8,卻發現原來能正常瀏覽的svg圖,在螢幕上縮成了小小的一塊。
實在是沒辦法,只好考慮使用silverlight來替代了。
下面是關於svg的一個報道
網際網路之父稱IE處理SVG時落後對手
有“網際網路之父”之稱的蒂姆·伯納斯-李(Tim Berners-Lee)表示,通常情況下他不會表達對某種瀏覽器的“偏愛”,但他發現微軟的IE瀏覽器確實存在一個問題.
伯納斯-李本週接受採訪時表示,IE在處理一種重要的影象格式方面IE落後於其它瀏覽器.向量圖形(SVG)格式的影象能夠隨意放大或縮小而不會失真,地圖通常採用SVG格式.
伯納斯-李說,稍加註意就會發現,大多數瀏覽器都支援SVG影象格式,但IE在這方面做得不夠好.Firefox、Safari和其它瀏覽器對SVG
提供了內建支援,IE則依賴Adobe
Systems的一款外掛支援SVG.使用者必須下載、安裝這款外掛才能夠在IE中顯示SVG格式影象,即使是最近釋出的IE 8β2也是如此.
微軟在一份宣告中表示,“我們一直在考慮支援SVG,我們意識到Web開發人員需要SVG.”
在IE中提供對SVG的內建支援對於微軟而言已經刻不容緩,因為從明年1月1日起Adobe將不再支援SVG外掛.目前尚不清楚屆時使用者是否還能夠繼續下載這款SVG外掛.
下面是一個可以正確顯示的例子
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head></head>
<title>合作關係圖視覺化展示</title>
<body>
<iframe id="frame" src="http://124.16.136.158:8080/myapp/Parse_Draw.jsp?author=馮登國 " width="100%" frameborder="0" marginheight="0" marginwidth="0"></iframe>
<script type="text/javascript">
function resizeIframe() {
var height = document.documentElement.clientHeight;
height -= document.getElementById('frame').offsetTop;
// not sure how to get this dynamically
height -= 20; /* whatever you set your body bottom margin/padding to be */
document.getElementById('frame').style.height = height +"px";
};
document.getElementById('frame').onload = resizeIframe;
window.onresize = resizeIframe;
</script>
</body>
</html>