CSS图像大小调整

CSS图像大小调整,css,image,resize,Css,Image,Resize,我有这个CSS代码: <style> body { position:absolute; background-image: url(art/c11.jpg); width:100%; height:100%; } </style> 身体{ 位置:绝对位置; 背景图片:url(art/c11.jpg); 宽度:100%; 身高:100%; } 当我在网上阅读时,我预计这将调整背景图像的大小,并使其适合浏览器

我有这个CSS代码:

<style>
     body {
     position:absolute;
     background-image: url(art/c11.jpg);
     width:100%;
     height:100%;
     }
</style>

身体{
位置:绝对位置;
背景图片:url(art/c11.jpg);
宽度:100%;
身高:100%;
}
当我在网上阅读时,我预计这将调整背景图像的大小,并使其适合浏览器窗口

但是没有。我想我显然做错了什么(我对CSS了解不够)。有什么建议吗

更新:

我添加了孔示例(不工作):


没有头衔
身体{
位置:绝对位置;
背景图片:url(art/c11.jpg);
背景大小:100%;
背景重复:无重复;
宽度:100%;
身高:100%;
}

您可以使用后台大小为100%的CSS3属性,但对该属性的支持尚未全面实现,在较旧的浏览器中不起作用。为了实现你想要的,你需要一系列的技巧来让它工作。有很多这样的博客会告诉你你需要做什么。我不建议这样做,因为如果你有一个大图像/慢速连接,你会看到图像加载。如果图像的质量不是最好的,那么在屏幕上或以不同的分辨率拉伸时,图像看起来就不好。

添加“背景重复”属性

完成的代码应如下所示:

body { position:absolute; background-image: url(art/c11.jpg); background-size:100%; background-repeat: no-repeat; width:100%; height:100%; } 身体{ 位置:绝对位置; 背景图片:url(art/c11.jpg); 背景大小:100%; 背景重复:无重复; 宽度:100%; 身高:100%; }
我认为没有一种方法可以使用CSS来拉伸或控制背景图像的大小。但是,您可以使用背景位置背景附件背景重复属性来实现替代结果


或者,您可以使用一些JavaScript将图像放入较低的z索引层,并在返回时设置该层,但是这有点黑客行为

如果您要跨浏览器进行此操作,最好在页面上放置一个图像,然后将所有内容包装在放在顶部的DIV中。例如

CSS

#background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#content {
  position: relative;
  z-index: 1;
}
如果您计划支持IE6,请添加以下代码段:

<!--[if IE 6]>
  <style type="text/css">
    html {
      overflow-y: hidden;
    }

    body {
      overflow-y: auto;
    }

    #background {
      position:absolute;
      z-index:-1;
    }

    #content {
      position:static;
    }
  </style>
<![endif]-->

HTML

<img id="background" src="art/c11.jpg" alt="" />

<div id="content">
  Your content
</div>

你的内容

通过使用css3,您可以实现透视图像大小调整

html { 
background: url(bg.jpg) no-repeat center center fixed; 
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
这适用于所有浏览器和ie9+。 以下过滤器也适用于ie7和ie8

filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='.bg.jpg', sizingMethod='scale');
-ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='bg.jpg', sizingMethod='scale')";

我不知道为什么,但这两个例子都不适合我。。。无论如何,谢谢。刚刚用阿穆拉的建议更新了代码。现在可以用了吗?
背景尺寸:100%节省了时间。我不知道为什么,但这两个例子都不适合我。。。不管怎样,谢谢。你为什么要定位你的身体元素?这应该不是必需的,但通常最好将正文的边距和填充设置为0。这将规范化一些浏览器奇怪的默认设置。
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='.bg.jpg', sizingMethod='scale');
-ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='bg.jpg', sizingMethod='scale')";