2017-11-08【关于html与body标签的一些说法】

像素是小数时,浏览器中是怎么显示的?

比如11.9px是显示为12px还是11px?


关于htmlbody标签的一些说法?

基本页面结构:

<!DOCTYPE html>
<html lang="en">
<head>
//...
</head>
<body>
//...
</body>
</html>

html是根标签,那html标签与body标签究竟有哪些差异呢?

1、background-color

只设置bodybackground-color,整个浏览器会显示该背景色;

但是如果同时设置htmlbodybackground-color,则浏览器会显示html设置的颜色值。

html{
    background-color: darkred;
}
body{
    background-color: yellow;
    border: 10px solid #ccc;
    width: 100px;
    height: 100px;
    margin: auto;
}
1.png

浏览器 深红色的背景色 是在html标签上设置。居中黄色的部分才是body上设置的。

选自张鑫旭:
当html标签无背景样式时,body的背景色其实不是body标签的背景色,而是浏览器的。一旦html标签含有背景色,则body的背景色变成了正常的body标签(一个实实在在,普普通通标签)的背景色,而此时的html标签最顶级,背景色被浏览器获取,成为浏览器的背景色。

2、对margin属性的支持

WindowsChrome浏览器下,htmlbody标签都支持margin属性。

html{background:darkred; margin:100px; border:10px solid #cccccc;}
body{background:yellow; margin:100px; border:10px solid #cccccc;}
1.png

再测试一下,是否都支持padding属性?

1.png

可以看出是支持的,同样在WindowsChrome浏览器下。

3、关于滚动条

Chrome浏览器下打开一个空白的页面,是没有滚动条产生的,如果想让它产生滚动条,这样设置:html{overflow-y: scroll;}。设置在body上也是可以的:body{overflow-y: scroll;}

4、关于背景background属性的fixed定位值

//页面结构
<body><div></div></body>

//在html上设置
html{background:white url(../img/404.jpg) no-repeat fixed center center;}
div{height:2000px;}

//在body上设置
body{background:url(../img/404.jpg) no-repeat fixed center center;}
div{height:2000px;}

经测试,都能实现滚动条滚动,图片死都不动的效果。

5、关于height: 100%;

body在默认情况下,height属性值不是100%显示的。如下:

html{background-color: darkseagreen;}
body{background:yellow; border:50px solid pink;}
1.png

body设置height: 100%属性

html{background-color: darkseagreen;}
body{background:yellow; border:50px solid pink;height: 100%;}

然而并没有起作用。

解决:在html标签上设置height:100%;

html{margin: 0;background-color: darkseagreen;height: 100%;}
body{margin: 0;background-color: yellow;border: 50px solid pink;height: 100%;}

经测试,bodyheight变成100%,占据100%的高度。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,813评论 1 92
  • HTML标签解释大全 一、HTML标记 标签:!DOCTYPE 说明:指定了 HTML 文档遵循的文档类型定义(D...
    米塔塔阅读 3,331评论 1 41
  • 之前做活动的时候,需要前置操作然后显示弹框,但是后来交互说弹框之后要把背后的body的滚动给禁掉,弹框关闭之后恢复...
    木白no1阅读 2,171评论 2 5
  • 多少来日方长, 最后变成了再见无期。 所以干脆就Don't care。
    如何帅气的名字才配阅读 141评论 0 0