码迷,mamicode.com
首页 > 其他好文 > 详细

div中背景图片自动适应屏幕高度无效原因和例子

时间:2016-06-23 16:00:31      阅读:270      评论:0      收藏:0      [点我收藏+]

标签:

我在做一个简单的页面背景图时,设置Css3样式中层的高度适宜屏幕高度无效,后来才知道原因

原因:原来html文档,默认标签html、body的宽度为100%,但高度没有,当我们设置div的高度为100%,

是继承上一级标记html、body的高度,所以无效

例子如下:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>测试背景图适合全屏</title>
</head>

<style type="text/css">
html,body{
    height:100%;
    margin:0px;
    padding:0px;
}
.box {
    height:100%;
    width:100%;
    background-image:url(../%E7%99%BB%E5%BD%95%E5%9B%BE%E6%A0%871/welcome.png);
    background-size:cover;
}
</style>
<body>
    <div class="box"></div>
</body>
</html>

先设置html、body的高度为100%,再去设置div的高度100%,宽度100%,这样层就适应屏幕的宽度和高度了

效果图如下:

技术分享

其他的例子:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>测试背景图适合全屏</title>
<style type="text/css">
body{
    height:100%;
    overflow:hidden;
    margin:0px;
    padding:0px;
}
.box {
    height:100%;
    position:absolute;
    width:100%;
    background-image:url(../%E7%99%BB%E5%BD%95%E5%9B%BE%E6%A0%871/welcome.png);
    background-size:cover;
}
</style>

</head>
<body>
<div class="box" ></div>
</body>
</html>

这是通过绝对定位的属性,获取上一级标签body的高度,所以div的高度才有效,如果直接设置div

<div style="width:100%;height:100%"></div>是高度是找不到比较的,不知道去跟谁的100%

div中背景图片自动适应屏幕高度无效原因和例子

标签:

原文地址:http://www.cnblogs.com/xielong/p/5610929.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!