首页 >web前端 >前端问答 > 正文

html和body标签的区别有哪些

原创2021-09-13 11:51:4201004
线上培训班

区别:1、html标签是文档的根元素;body标签是文档的主体元素;2、应该应用在html和body标签的全局样式不同;3、JS中html对应“document.documentElement”,body对应“document.body”。

本教程操作环境: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 AttributeCSS Property
backgroundbackground
bgcolorbackground
background-color
marginbottommargin-bottom
marginleftmargin-left
marginrightmargin-right
margintopmargin-top
textfont

JavaScript 中的区别

上面举了一些 <html> 和 <body> 在 CSS 中的区别,其实在 JavaScript 中同样存在区别,例如 html 对应 document.documentElement、body 对应 document.body

更多编程相关知识,请访问:编程入门!!

以上就是html和body标签的区别有哪些的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:css html body js
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    作者信息
    推荐视频教程
  • HTML前端基础第六部HTML前端基础第六部
  • HTML 中文开发手册HTML 中文开发手册
  • html5开发实战之百度外卖手机站前端制作html5开发实战之百度外卖手机站前端制作
  • HTML5前端面试题HTML5前端面试题
  • 最通俗易懂的html+css课程 9天速成最通俗易懂的html+css课程 9天速成
  • 视频教程分类