CSS3 background-size图片自适应

CSS3 background-size图片自适应

http://www.html5cn.com.cn/css3/2013-04-21/267.html

background-size属性和background-origin属性、background-clip属性一 样,也是CSS3对于background新增加的属性。它的作用是指定背景图片的大小,比如:对于一个div块,我们需要为它添加一张图片作为背景,然 而图片大小并非总能尽如人意,但我们又不想使用background-repeat属性让背景平铺,那么这时我们就可以使用background- size属性使图片放大或者是缩小来适应div块,当然这也可能会造成背景图的失真。

下面我们就先从它的语法说起吧:

background-size :[ | | auto ]{1,2} | cover | contain ;

这 个属性有2个可选值,第1个值用于指定背景图的宽width,第2个值用于指定背景图的高height,如果只设定1个值,则第2个值默认为自动 auto。这两个值可取数字(单位为px)也可以取百分比,当指定为百分比时,大小会由所在区域的宽度、高度,以及background-origin的 位置决定,当然还可以通过cover和contain来对图片进行伸缩。

cover:用于等比放大背景图

contain:用于等比缩小背景图(背景图需大于块,否则背景图仍会被放大以适应块)

auto:默认值

下面我们就用实例来看一下它们的效果吧

首先看一下初始代码及效果

HTML代码:

1
2
3
<</code>div class="div1">
    
BeyondWeb.cn-记录与分享前端开发的点点滴滴
</</code>div>

CSS代码:

1
2
3
4
5
6
7
8
9
.div
1
{
    
width
:
200px
;
    
height
:
100px
;
    
color
:
#fff
;
    
font-size
:
12px
;
    
border
:
10px
dotted
#333
;
    
padding
:
10px
;
    
background
:
#666
url
(girl.jpg)
no-repeat
;
}

初始效果图:

1、background-size取固定值

CSS代码:

1
2
3
4
5
6
7
8
.div
1
{
    
...
    
-moz-background-
size
:
200px
100px
;
    
-webkit-background-
size
:
200px
100px
;
    
-o-background-
size
:
200px
100px
;
    
background-
size
:
200px
100px
;
    
...
}

效果图:

2、background取百分比

CSS代码:

1
2
3
4
5
6
7
8
.div
1
{
    
...
    
-moz-background-
size
:
90%
60%
;
    
-webkit-background-
size
:
90%
60%
;
    
-o-background-
size
:
90%
60%
;
    
background-
size
:
90%
60%
;
    
...
}

效果图:

3、background取cover

CSS代码:

1
2
3
4
5
6
7
8
.div
1
{
    
...
    
-moz-background-
size
:cover;
    
-webkit-background-
size
:cover;
    
-o-background-
size
:cover;
    
background-
size
:cover;
    
...
}

效果图:

为了填满背景,此时是把原图等比放大了

4、background取contain

CSS代码:

1
2
3
4
5
6
7
8
.div
1
{
    
...
    
-moz-background-
size
:contain;
    
-webkit-background-
size
:contain;
    
-o-background-
size
:contain;
    
background-
size
:contain;
    
...
}

效果图:

此时图片并没有缩小,反而被放大了,其实这是因为原背景图比div块小的原因,那么如果我们照一张大一点的图片,那么会是什么效果呢?现在拿一张比上面div块大的多的图片试一试,CSS代码是不变的,来看一下效果:

这时,背景图片被等比例缩小了,以适应div块。

5、background取auto

CSS代码:

1
2
3
4
5
6
7
8
.div
1
{
    
...
    
-moz-background-
size
:
auto
;
    
-webkit-background-
size
:
auto
;
    
-o-background-
size
:
auto
;
    
background-
size
:
auto
;
    
...
}

效果图:

auto是默认值,这和初始效果是一样的,背景图片不做任何的放大或者是缩小。

好了,background-size属性就说这么多。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114265.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • wolive在线客服系统_源码屋

    wolive在线客服系统_源码屋wolive是一款为数不多的可自行搭建的php客服系统源码,基于开源高性能workerman框架开发,看了下,功能比较全。想到基于workerman开发,并发性能应该不错。找遍其它客服系统,发现都没有给源码,程序及聊天数据也全部存储在别人服务器上,由于业务涉及到一些账号、订单、买家信息等隐私,担心数据安全问题,所以找到了wolive。由于wolive可以私有化部署,数据库、程序都在自己服务器上,…

    2022年9月21日
    0
  • mac idea 2021.5.4 激活码【在线注册码/序列号/破解码】

    mac idea 2021.5.4 激活码【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
    36
  • 万能激活成功教程器修改器_激活成功教程软件

    万能激活成功教程器修改器_激活成功教程软件神呐原谅我吧为了省$35啊删掉注册表[HKEY_CURRENT_USER\Software\Classes\CLSID\{B1159E65-821C3-21C5-CE21-34A484D54444}\4FF78130]该项下的所有内容

    2022年8月21日
    2
  • docker入门(利用docker部署web应用)[通俗易懂]

    docker入门(利用docker部署web应用)[通俗易懂]前言:本课程是在慕课网上学习第一个docker化的java应用课程时所做的笔记,供本人复习之用目录第一章什么是docker1.1docker的发展史1.2docker国内应用史1.3什么是Docker第二章了解docker2.1docker思想2.1.1集装箱2.1.2标准化2.1.3隔离2.2docker解决的问题2.2.1…

    2022年5月28日
    36
  • 电压转电流电路

    电压转电流电路图1 电压转电流原理图   如图 1是输入输出无偏置型电压转电流信号调理的典型电路。其中运放A、电阻R13、三极管Q10构成压控电流源电路;电阻R9、R11、运放B、三极管Q8、Q9构成电流放大电路。   当电压信号加在运放A同向输入时,由运放特性:虚短、虚断可知反向输入端电压跟随同向输入端电压信号,此时在电阻R13支路上产生电流流过三极管Q10,三极管Q10基极受运放A输出端

    2022年6月2日
    37
  • JsonObject和JsonArray转换问题

    JsonObject和JsonArray转换问题开发过程中遇到需要将调用接口返回的JsonObject转换为JsonArray格式的数据,在使用过成中遇到转换问题,代码如下publicstaticJSONObjectgetRecJsonObj(StringstuId,StringschoolDate){Stringjson;try{json=Jsoup.connect(UrlConfig.URL+”GetStudentInfo?stuId=”+stuId+

    2022年5月31日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号