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> BeyondWeb.cn-记录与分享前端开发的点点滴滴</</code> |
CSS代码:
|
1
2
3
4
5
6
7
8
9
|
.div1{ width:200px; height:100px; color:#fff; font-size:12px; border:10pxdotted#333; padding:10px; background:#666url(girl.jpg)no-repeat;} |
初始效果图:
1、background-size取固定值
CSS代码:
|
1
2
3
4
5
6
7
8
|
.div1{ ... -moz-background-size:200px100px; -webkit-background-size:200px100px; -o-background-size:200px100px; background-size:200px100px; ...} |
效果图:
2、background取百分比
CSS代码:
|
1
2
3
4
5
6
7
8
|
.div1{ ... -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
|
.div1{ ... -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
|
.div1{ ... -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
|
.div1{ ... -moz-background-size:auto; -webkit-background-size:auto; -o-background-size:auto; background-size:auto; ...} |
效果图:
auto是默认值,这和初始效果是一样的,背景图片不做任何的放大或者是缩小。
好了,background-size属性就说这么多。
CSS3 background-size图片自适应的更多相关文章
- 网页特效:用CSS3制作3D图片立方体旋转特效
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- Android ImageView图片自适应 (转)
网络上下载下来的图片自适应:android:adjustViewBounds="true"(其详细解释在下面)<ImageView android:id=" ...
- css3制作六边形图片
效果图: 实现原理: 这个效果的主要css样式有: 1.>transform: rotate(120deg); 图片旋转 2.>overflow:hidden; 超出隐藏 3.>v ...
- Android ImageView图片自适应
网络上下载下来的图片自适应:android:adjustViewBounds="true"(其详细解释在下面) <ImageView android:id=" ...
- 纯CSS3实现的图片滑块程序 效果非常酷
原文:纯CSS3实现的图片滑块程序 效果非常酷 之前我们经常会看到很多利用jQuery实现的焦点图插件,种类太多了,今天我想给大家分享一款利用纯CSS3实现的图片滑块应用,完全是利用CSS3的相关特性 ...
- 【Python全栈-CSS】CSS实现网页背景图片自适应全屏
CSS实现网页背景图片自适应全屏 功能:实现能自适应屏幕大小又不会变形的背景大图,而且背景图片不会随着滚动条滚动而滚动. 以下是用CSS实现的方法: <html> <head> ...
- CSS——background-size实现图片自适应
在网页端,我们经常想让图片能够自适应拉伸缩放,使之可以完美的嵌入我们给定的容器里,比如div,button,input,下面我将用代码来说明如何实现这个功能! 一.div背景图自适应 如果知道图片都有 ...
- padding-bottom图片自适应
今天学了慕课网的去哪了视频轮播图的图片自适应是这么做的htm,cssl如下:为什么padding-bottom 取值62.08% 呢,因为图片的高为465px,宽为749px. 465/749 既为6 ...
- 基于html5背景图片自适应代码
基于html5背景图片自适应代码是一款背景不随滚动条滚动,会根据分辨率不同自动匹配对应的背景图片.效果图如下: 在线预览 源码下载 实现的代码. css代码: .jawbone-hero .jaw ...
- css3伪放大镜(图片放大动画)效果(鼠标移入圆形区域放大图片)
源码: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&q ...
随机推荐
- [数据清洗]- Pandas 清洗“脏”数据(三)
预览数据 这次我们使用 Artworks.csv ,我们选取 100 行数据来完成本次内容.具体步骤: 导入 Pandas 读取 csv 数据到 DataFrame(要确保数据已经下载到指定路径) D ...
- struts2 使用filter解决中文乱码问题
1.编写fliter的代码 import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChai ...
- Python sort方法
官方文档: sort(*, key=None, reverse=False) This method sorts the list in place, using only < comparis ...
- linux下搜索指定内容
echo " ls *.$2 | while read file;do out=$( (grep -n $1 $file) ) [ -n \"$out\" ] & ...
- 从MongoDB的ObjectId中获取时间信息
MongoDB默认使用_id字段作为主键,类型为ObjectId.ObjectId的生成有一定的规则,详情可以查看这篇文章 - MongoDB深究之ObjectId.如果你在写入数据库的时候忘记写入创 ...
- 分布式文件系统FastDFS如何做到高可用
FastDFS是用C语言编写的一款开源的轻量级分布式文件系统.它对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题.特别适合以文件为载体的 ...
- webpack基础打包安装分享
一.创建webpack-first文件夹作为站点,创建app文件夹存放js原始模块(main.js 和 Greeter.js) 创建 public文件夹存放index.html和打包后的bundle. ...
- Django-mtv开发模式
从著名的MVC模式开始说起 所谓的MVC就是把Web应用分为模型(M)控制器(C)和视图(V)三层,他们之间以一种插件式的.松耦合的房还是 连接在一起,模型负责业务对象与数据库的映射(ORM),视图负 ...
- kmalloc、vmalloc、__get_free_pages()的区别
一.分布位置上的区别: kmalloc()和__get_free_pages()函数申请的内存位于物理内存的映射区域,而且在物理上也是连续的,它们与真实的物理地址只有一个固定的偏移,因此存在简单的线性 ...
- IO流与IO缓冲
1.字节与字符的演变 public class inputStream { public static void test1() throws Exception{ File file= new Fi ...