使SVG完全填充整个页面 我在纯JavaScript中编写一个简单的单页应用程序,希望使用全页SVG作为图形基础。

使SVG完全填充整个页面 我在纯JavaScript中编写一个简单的单页应用程序,希望使用全页SVG作为图形基础。,javascript,html,svg,Javascript,Html,Svg,我会认为 <svg id="svg" width="100%" height="100%"></svg> 您可能需要将CSS中的默认边距和填充置零,如: html, body, * { margin: 0; padding: 0; } 您是否尝试过使用css而不是属性设置高度和宽度?并清除所有css默认值(网上有很多这样的例子)@Anthony。隐马尔可夫模型。。。尝试了#svg{width:100%;height:100%},这似乎与svg

我会认为

<svg id="svg" width="100%" height="100%"></svg>

您可能需要将CSS中的默认边距和填充置零,如:

html, body, * { 
     margin: 0; 
     padding: 0; 
}

您是否尝试过使用css而不是属性设置高度和宽度?并清除所有css默认值(网上有很多这样的例子)@Anthony。隐马尔可夫模型。。。尝试了
#svg{width:100%;height:100%}
,这似乎与svg本身的属性具有相同的效果。。。现在我将尝试查找您提到的默认值。尝试添加
html,body,*{margin:0;padding:0;}
@Anthony YES@安东尼回答得很好。您也可以使用最大宽度和最大高度最小宽度和最小高度。因为它可以防止设备之间的尺寸变化。感谢您找到这个;太棒了!注意:
body{margin:0;}
也可以工作(我们也可以简单地写为
)。你在回答中建议的其他命令有什么好处吗?(即,
padding:0
html
*
)有几件事:1。一般来说,在页面级别处理CSS比在内联级别处理CSS更好(这允许更多的可移植性和关注点分离)。每个浏览器都可以自由应用他们喜欢的任何默认样式,对于大多数设计师和开发人员来说,摆脱布局的样式通常是边距和填充。3.我不太愿意使用通配符选择器将所有内容归零,但这是解决此问题的常见方法,因此我主要是鹦鹉学舌,因为如果深入研究此主题,您可能会遇到它。扩展到更多浏览器的好处是。在Edge上,我还需要添加
溢出:隐藏
;我认为这隐藏了特定于边缘的填充。实际上,最好弄清楚Edge为什么在底部添加填充,因为
html,body,*{margin:0;padding:0;}
是不够的。这里有一个小问题。。。