css - body 的 background 位置
巴扎黑
巴扎黑 2017-04-17 14:54:09
0
3
776

http://runjs.cn/code/p2tvxwsj

代码如下:
为什么 body 的 background 位置不在 border之内






巴扎黑
巴扎黑

reply all (3)
Ty80

因为在所有html标签中,body的background最特别,与其它的标签背景计算方法都不一样;
可能W3C当时做浏览器和html语言时就是故意把body设计的复杂一些,起到统领全局的作用;我的建议是,把这些特殊的地方背诵记住避免以后出问题时找不到bug源头;
总结一下body的background有两个奇怪的地方:
1、你可以试着给body一个红色背景色,会发现全屏宽、全屏高都铺满了红色;
2、给body设置 margin:50px auto; 居中后,发现背景色和背景图片都是从最左边到最右边宽度百分百,背景色的高度也是百分百;
在你的代码基础上做了修改,你看下:
http://runjs.cn/code/jwwcoan0

    阿神

    以前回答过的答案:
    body特殊性

      洪涛

      果然, 之前也没有碰到过这样的问题!

      试了下!

      如果html的background-image值为none(默认值为:none), background-color值为transparent(默认值为: transparent), 那么浏览器就会向body借用这两个属性值来对html设置background-image或background-color属性.

      例如上面的代码, 若不做改动效果如下:

      若改动html中background-color属性值为有效值, 如: #fafafa.将会得到如下效果:

      希望对你有所帮助!

        Latest Downloads
        More>
        Web Effects
        Website Source Code
        Website Materials
        Front End Template
        About us Disclaimer Sitemap
        php.cn:Public welfare online PHP training,Help PHP learners grow quickly!