发布网友 发布时间:2022-04-06 10:47
共3个回答
懂视网 时间:2022-04-06 15:09
对于一个网页来说,有一张好看又清晰的背景图片是非常吸引人的,但是并不是每张图片都是有相同的大小,所以就需要晒西安图片的自适应,那么,css怎么让图片自适应呢?本篇文章将来介绍关于css图片自适应大小的方法。我们下面就来直接看一个例子:
<div class="wrapper"> <!--背景图片--> <div id="web_bg" style="background-image: url(./img/bg.jpg);"></div> <!--其他代码 ... --></div>
#web_bg{ position:fixed; top: 0; left: 0; width:100%; height:100%; min-width: 1000px; z-index:-10; zoom: 1; background-color: #fff; background-repeat: no-repeat; background-size: cover; -webkit-background-size: cover; -o-background-size: cover; background-position: center 0; }
对于上述这个例子,我们来分析一下这个css代码怎么让图片自适应大小。
首先我们来看看这三句在css图片自适应大小中有什么作用:
position:fixed; top: 0; left: 0;
说明:这三句是让整个div容器固定在屏幕的最上方和最左方。
其次我们来看看下面这几句在css图片自适应大小中的作用:
width:100%; height:100%; min-width: 1000px;
说明:这几句让整个div跟屏幕实现一模一样的大小,从而达到全屏效果,而min-width是为了实现让屏幕宽度在1000px以内时,div的大小保持不变,也就是说在这种情况下,缩放屏幕宽度时,图片不要缩放(只有在1000px以内才有效)。
接下来我们来看一看这个代码:
z-index:-10;
说明:这个是让整个div在HTML页面中各个层级的下方,正常情况下,第一个创建的层级z-index的值是0,所以如果我们这里写成-1也可以实现,不过这里写-10是确保整个div在最下面,因为如果页面中层级太多了,有的时候用-1不一定在最下面,但如果写成-100这样大数字的也没有什么意义。用index:-10 以此能达到看上去像背景图片,其实是一个最普通的div,只是层级关系变了,才让人看上去看是背景图片。
background-repeat: no-repeat;
注意:这个是背景不要重复。
background-size: cover; -webkit-background-size: cover; -o-background-size: cover;
说明:上面三句是一个意思,就是让图片随屏幕大小同步缩放,但是有部分可能会被裁切,不过不至于会露白,下面两句是为chrome和opera浏览器作兼容。
最后来看一看最后一句:
background-position: center 0;
说明:上面这句的意思就是图片的位置,居中,靠左对齐。
以上这篇文章到这里就结束了,如果你想对上述css代码中所提到的各个属性有更多的了解可以参考css手册。
热心网友 时间:2022-04-06 12:17
用background-size属性,你想给他多大的百分比都可以,不设置表示默认图片大小,设置100%表示全屏显示图片,按比例缩小或者放大。
这样就可以实现背景图片自适应父容器大小而自动变化,达到填充效果。 但是,图片会被拉伸填充,这并不是我们想要的效果,那么我们可以不设置 100% 参数,而是使用 cover 参数。
设置cover参数以后,背景图会按比例缩放填充满整个背景。如果使用IE浏览器你会发现,上面的 background-size:100% 100%; 并没有起到作用,图片原本是怎样就怎样显示,比较大就只能显示一部分。
所以这时需要使用IE特有的滤镜 AlphaImageLoader 兼容性在IE5.5+以上版本的浏览器上都可以完美运行。
1、enabled: 可选项。布尔值(Boolean)。设置或检索滤镜是否激活。true | false_ true: 默认值。滤镜激活。
2、false: 滤镜被禁止。
3、sizingMethod: 可选项。字符串(String)。设置或检索滤镜作用的对象的图片在对象容器边界内的显示方式。
4、crop: 剪切图片以适应对象尺寸。
5、image: 默认值。增大或减小对象的尺寸边界以适应图片的尺寸。
6、scale: 缩放图片以适应对象的尺寸边界。
7、src: 必选项。字符串(String)。使用绝对或相对 url 地址指定背景图像。假如忽略此参数,滤镜将不会作用。
特性:
1、Enabled: 可读写。布尔值(Boolean)。参阅 enabled 属性。
2、sizingMethod: 可读写。字符串(String)。参阅 sizingMethod 属性。
3、src: 可读写。字符串(String)。参阅 src 属性。
说明:
在对象容器边界内,在对象的背景和内容之间显示一张图片。并提供对此图片的剪切和改变尺寸的操作。如果载入的是PNG格式,则0%-100%的透明度也被提供。
PNG格式的图片的透明度不妨碍你选择文本。也就是说,你可以选择显示在PNG格式的图片完全透明区域后面的内容。这样我们就可以完美兼容绝大多数的浏览器,实现用CSS让背景图片100%填充了。
热心网友 时间:2022-04-06 13:35
如果是背景图片的话是不能自适应大小的,最多能改变其位置。
background:url(1.jpg) no-repeat center center;
如果是img标签的话,直接width:100%;height:100%;就可以了。
实现代码参考:
浏览器支持:
Firefox 3.6+ , Chrome 1.0+ , Opera 9.63+, IE9 +
具体写法
<style>
.container{background-image:url(‘’) ;background-attachment:fixed;background-repeat:no-repeat;background-size:cover;-moz-background-size:cover;-webkit-background-size:cover;}
</style>
<body>
<div class=”container”>
</div>
</body>