瀏覽器具有HTML頁面的默認填充。 例如,我的FF默認設置了8px的body元素邊距。 我可以計算默認寬度填充使用瀏覽器默認填充
jQuery(window).width() - jQuery('body').innerWidth();
由於體內元素HTML頁面跨越所有可用的瀏覽器窗口的寬度。
另外我有其他瀏覽器設置寬度和高度填充不同的值。
你能提出計算高度填充的方法嗎?
由於身體內部高度將返回實際頁面內容高度,並且不會跨越所有可用高度,因此以前的代碼不起作用。
瀏覽器具有HTML頁面的默認填充。 例如,我的FF默認設置了8px的body元素邊距。 我可以計算默認寬度填充使用瀏覽器默認填充
jQuery(window).width() - jQuery('body').innerWidth();
由於體內元素HTML頁面跨越所有可用的瀏覽器窗口的寬度。
另外我有其他瀏覽器設置寬度和高度填充不同的值。
你能提出計算高度填充的方法嗎?
由於身體內部高度將返回實際頁面內容高度,並且不會跨越所有可用高度,因此以前的代碼不起作用。
你真的需要計算填充嗎?填充是在元素的css設置中爲填充和邊距定義的。
您可以在jQuery中輕鬆獲得這些:
// Select the body element.
var bodyElement = $('body');
// Get the paddings
var widthPadding = bodyElement.css('padding-left') + bodyElement.css('padding-right');
var heightPadding = bodyElement.css('padding-top') + bodyElement.css('padding-bottom');
// Get the margins
var widthMargin = bodyElement.css('margin-left') + bodyElement.css('margin-right');
var heightMargin = bodyElement.css('margin-top') + bodyElement.css('margin-bottom');
您可以刪除默認的用戶代理(即瀏覽器)在你的CSS文件中定義的設置:
body {
margin: 0;
padding: 0;
}
我以前檢查過jQuery('body').css('margin'),但它對我返回0。你的jQuery('body').css('margin-left')返回8px。工作,謝謝。奇怪,因爲我... – 2011-05-13 20:47:37
原因是,邊緣可以是一個值列表,例如:'「10px 0 20px 30px」'(指定頂部,右側,底部和左側)。如果你只是想要一個特定的值,可以使用'margin-xxx'或'padding-xxx',其中'xxx'是'top','right','bottom'或'left'。 – Spoike 2011-05-13 20:57:50