登录  /  注册

CSS高效开发实战:CSS 3、LESS、SASS、Bootstrap、Foundation 读书笔记(1)设定背景图_html/css_WEB-ITnose

php中文网
发布: 2016-06-24 11:53:17
原创
1294人浏览过

技术的新发展,除计算机可以接入互联网之外,平板电脑、智能手机、智能电视等其他设备均可访问互联网。在多设备时代,构建多屏体验也不是听说的那么难。 但是这也增加了学习css的难度?不知道如何上手,只懂一点基础的css语法,在移动互联时代,难道我们就这样落伍了??好好学习吧,看完《css高效开发实战:css 3、less、sass、bootstrap、foundation》,给自己的未来打气!

5.1  设定背景图的大小

在CSS 3出现之前,背景图片的尺寸是由图片的实际尺寸决定的。如果同样的图片要在多个不同的地方作为背景的话,就必须用制图工具做成不同的尺寸,这一方面加大了开发者的工作量,另一方面也占用了更多的磁盘空间和网络空间。在CSS 3中,开发者可以使用background-size属性来规定背景图片的尺寸,这就可以在不同的环境中重复使用背景图片了。例如下面的代码:

1

2

3

4

5

div{

background:url(img_flwr.gif);

background-size:80px 60px;

background-repeat:no-repeat;

}

  

最基本的用法当然是直接使用长度单位或者百分比来指定背景的尺寸,其中第1个值是宽度,第2个值是高度。如果只设置一个值,则高度默认是auto。

background-size还有两个可选项:cover和contain。这两个选项都不会造成图像比例失真。其中cover相当于宽度等于元素宽度、高度设为auto的情况;而contain则相当于高度等于元素高度、宽度设为auto的情况,下面举例说明。

首先,先设置一个高度和宽度均为300像素的容器,然后将一张1600?×?1200尺寸的图片设置为图片的背景:

1

2

3

4

5

6

7

8

9

10

.container{

   background:url(naicha.jpg) no-repeat;

   border: 2px solid black;

   margin:auto;

   width:300px;

   height:300px;

}

style >

div >

  

效果如图5.1所示,由于背景取决于背景图片的尺寸,但背景图片太大,导致实际只显示了原图的左上角的部分。

 

图5.1  原始图片背景

下一步加上background-size,效果如图5.2所示。

1

2

3

4

5

6

7

8

9

10

11

12

13

.container{

   background:url(naicha.jpg) no-repeat;

   background-size: 100% auto;    /*设置宽度100%,高度自动*/

   /*使用background-size: 100% auto; 等效于使用background-size: contain; */

   -webkit-background-size: 100% auto;

   border: 2px solid black;

   margin:auto;

   width:300px;

   height:300px;

}

style >

div >

  

现在读者可以发现图片的全貌展现出来了,宽度等于容器宽度,高度则根据原图比例生成,最终得到和原图比例一致的背景图片,使用background-size: contain;等效于使用background-size: 100% auto;。

如果想占满容器的高度,则只需设置background-size: auto 100%;或者background-size: cover;即可,效果如图5.3所示。

  

图5.2  background-size: contain效果

图5.3  background-size: cover效果

注意:background-size一定要在指定图片后设定,否则不会生效。

最后来个书的封面图吧,有学习的一起交流

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号