本教程操作环境:windows7系统、CSS3&&HTML5&&javascript1.8.5版、Dell G3电脑。
在 CSS 中,<html> 和 <body> 的区别往往被忽略,全局样式或者定义在 <html> 上,或者定义在 <body> 上。实际上,两者是有区别的,不论是 CSS 老鸟还是新手,都应该了解。
HTML 和 Body 如何关联
<!DOCTYPE html> <html> <head> <!-- Metadata and such --> </head> <body> <!-- Where the content begins --> <body> </html>
根据标准定义,<html> 是文档的根元素,<head>、<body> 是 <html> 唯一的两个子元素。按照规范,<head> 才是和 <body> 相对照、需要加以区别的元素。
因此,<html> 和 <body> 是父子关系。在 HTML 文档中,:root 选择符对应 <html> 元素。
:root { } html { }
需要注意的是,:root 选择符(伪类)的优先级大于 html 选择符:(0, 0, 1, 0) vs (0, 0, 0, 1)。
哪些全局样式应该应用在 HTML
html { font-size: 62.5%; } body { font-size: 1.4rem; /* =14px */ } h1 { font-size: 2.4rem; /* =24px */ }
古怪的 background-color
CSS 中有一些古怪的行为,将 background-color 应用到 <body> 以后,即便 <body> 里的元素没有占满视口,背景颜色也会蔓延到整个视口。
给 html 设置 background-color 可以解决这个问题。
height: 100%
如果 <body> 及其子元素的高度需要设置为窗口高度时,<html> 元素上也需要添加:
html, body { height: 100%; }
哪些全局样式应该应用在 Body
早期的规范中,<body> 有以下行内属性:
-
background
-
bgcolor
-
marginbottom
-
marginleft
-
marginright
-
margintop
-
text
这些行内属性对应的 CSS 样式应该应用在 <body>。
Inline Attribute | CSS Property |
background | background |
bgcolor | background background-color |
marginbottom | margin-bottom |
marginleft | margin-left |
marginright | margin-right |
margintop | margin-top |
text | font |
JavaScript 中的区别
上面举了一些 <html> 和 <body> 在 CSS 中的区别,其实在 JavaScript 中同样存在区别,例如 html 对应 document.documentElement
、body 对应 document.body
。
更多编程相关知识,请访问:<a href="https://www.ymkuzhan.com/tutorial/development和body标签的区别有哪些的详细内容,更多请关注亿码酷站其它相关文章!
<!––>html和body标签的区别有哪些
—–文章转载自PHP中文网如有侵权请联系ymkuzhan@126.com删除
本文永久链接地址:https://www.ymkuzhan.com/41918.html