究竟是什么<;html>;视觉上?
滚动条属于究竟是什么<;html>;视觉上?,html,Html,滚动条属于还是 我一直在为每个html文件编写代码,但不知道它到底是什么。没有视觉效果。它只定义文档是一个html文档,它包含头和体 有视图的是主体 如果您谈到DOM,滚动条属于窗口。但是在CSS中,您可以通过 如果您在Firefox上使用Firebug并使用元素检查器(在该检查器中,您可以移动鼠标并指向HTML文档中的元素,然后将其指向没有元素的空白处,它将指向,给出以下标记和样式: <!DOCTYPE html> <html> <head> <ti
还是
我一直在为每个html文件编写代码,但不知道它到底是什么。
没有视觉效果。它只定义文档是一个html文档,它包含头
和体
有视图的是主体
如果您谈到DOM,滚动条属于窗口。
但是在CSS中,您可以通过
如果您在Firefox上使用Firebug并使用元素检查器(在该检查器中,您可以移动鼠标并指向HTML文档中的元素,然后将其指向没有元素的空白处,它将指向
,给出以下标记和样式:
<!DOCTYPE html>
<html>
<head>
<title></title>
<style type="text/css">
html {
background: green;
overflow:scroll;
}
body {
background: red;
overflow:scroll;
}
</style>
</head>
<body>
</body>
</html>
html{
背景:绿色;
溢出:滚动;
}
身体{
背景:红色;
溢出:滚动;
}
我们得到以下视觉效果:
火狐3.5
Internet Explorer 6
歌剧10
谷歌浏览器3
因此,我们可以设置HTML
元素的样式。事实上,有些人将其与BODY
标记结合使用,以获得复杂的背景。至于css定义,标准规定不能在HTML标记上定义任何样式(因为HTML标记本身并不代表视图,正如Mauris所说,它是BODY).但许多浏览器都支持在html上设置样式
例子
这将页面背景显示为红色,正文显示为类似绿色框的
:
<html style="background-color:red;overflow:scroll;">
<head>
<title>Page</title>
</head>
<body style="margin:10px;background-color:green;overflow:scroll;">
Page content
</body>
</html>
页
页面内容
如果删除html标记上的样式定义,则正文上的背景色和滚动条将填充整个页面。边距仅应用于正文内的内容
<html>
<head>
<title>Page</title>
</head>
<body style="margin:10px;background-color:green;overflow:scroll;">
Page content
</body>
</html>
页
页面内容
根据CSS 2.1,根元素()与其他元素一样是渲染块元素。它不代表视口,因此根据标准,它不是为视口提供滚动条的元素 — 事实上,滚动条不属于任何元素
如果有任何东西表示视口,则它是“初始包含块”的概念,但是这是根元素的“上一级”,不能由CSS或DOM来寻址
然而,有一些特殊情况会混淆问题。尤其是,由于第14.2节中规定的特殊行为,Ionut的试验给出了这些结果:
根元素的背景成为画布的背景并覆盖整个画布
也就是说,根元素的背景溢出其实际尺寸以填充整个视口和文档。其次:
对于根元素为HTML“HTML”元素或XHTML“HTML”元素且计算值为“背景色”的“透明”和“背景图像”的“无”的文档,用户代理必须使用该元素的第一个HTML“正文”元素或XHTML“正文”中背景属性的计算值为画布绘制背景时,元素子元素,并且不得为该子元素绘制背景
也就是说,尽管元素绝对不代表视口,但它的背景也会以同样的方式溢出其维度。这只是作为向后兼容性度量,因为作者已经习惯于在元素上指定背景
因此,您不能使用背景色来判断根元素的维度或主体元素的维度位于何处。更好的方法是设置document.documentElement.style.border='点红色1px'。这表明根元素具有文档的维度,而不是视口的维度
除了在IE Quirks模式下,它会绕过滚动条。在Quirks模式下,表示视口;设置body.style.overflow.hidden会删除页面的滚动条。这绝对是错误的;您不需要Quirks模式
更让人困惑的是,有一些有趣的非标准特例行为暗示根元素就是视口
在IE(标准模式)中,根元素的“溢出”属性设置为“滚动”,您可以将其设置为“隐藏”以删除视口滚动条。此外,“offsetHeight”是视口的高度,而不是边框显示的元素的实际高度
在其他浏览器中,offsetHeight是预期值,但是(可能是为了兼容性),您仍然可以将document.documentElement.style.overflow设置为“隐藏”(从默认的“可见”)以删除视口滚动条。奇怪的是,在Opera中,完成此操作后currentStyle.overflow属性仍将显示为“可见”
结果是,如果要确保视口没有滚动条,请编写:
html { overflow: hidden; height: 100%; }
并确保使用标准模式doctype。“高度:100%”规则处理浏览器遵循标准且不将根元素的滚动条映射到视口的情况:这将通过“初始包含块”设置高度以匹配视口,因此父视口无需显示滚动条ar.这只是一个标签,我们可以说让其他标签工作,或者定义这些标签的用途。实际上,滚动条属于和属于。取决于浏览器…一如既往。我会说是,但我想这取决于浏览器。事实上,我已经猜了很长时间:)你能补充一下你为每个HTML文件写了什么吗?这取决于页面是以怪癖模式还是严格模式呈现。可以随意添加其他IE版本的屏幕截图。重要的是要注意,如果你没有为HTML标记设置任何css样式定义,正文的样式将填充到页面范围。正文的背景将填充画布,是的 — 这是一个特例。尺寸和st