2012-07-11 42 views
0

我有一個頁面,我正在使用Chrome控制檯添加一個覆蓋整個身體的SVG元素。 我在控制檯輸入以下命令,以HTML格式包圍整個身體的元素的屬性

var svg = document.createElementNS("http://www.w3.org/2000/svg", "svg"); 
svg.style.position = "absolute"; 
svg.style.left = svg.style.right = svg.style.top = svg.style.bottom = "0px"; 
svg.style.opacity = 0.5; 
svg.style['z-index'] = 100; 
svg.style.width = "100%"; 
svg.style.height = "100%"; 
document.body.appendChild(svg); 

但SVG元素只覆蓋了顯示頁,即部分,如果頁面是足夠長的時間,使我們不得不向下滾動,整個頁面不包括在內。

有什麼建議嗎?

回答

0

如果要修復視口中的元素,請改爲使用position:fixed;

否則,不要使用100%,但:

svg.style.height = Math.max(document.body.scrollHeight, 
    document.documentElement.scrollHeight) + 'px'; 
+0

感謝,這是非常有益的 – dilpreet023 2012-07-11 09:20:06

+0

還要說明一點:設置'.style.right'和'不需要.style.bottom',因爲你已經將元素定位在左上角(全寬+高)。 – 2012-07-11 09:21:09