CSS3背景温故
1.背景的五种基本属性
background-color(背景颜色)
background-image(背景图片)
background-repeat(背景图片展示方式)
background-attachment(背景图片是固定还是滚动)
background-position(背景图片位置)
综合使用:background:[<background-color>][<background-image>][<background-repeat>][<background-attachment>][<background-position>]
2.background-color属性
语法:background-color:transparent || <color>
transparent:透明色
color:颜色名、rgb色、hls值、十六进制值、rgba色、hsla值
3.background-image属性
语法:background-image:none || <url>
none为默认值,没有的意思
url:图片地址,可以是相对地址,也可以是绝对地址
4.background-repeat属性
语法:background-repeat:repeat || repeat-x || repeat-y || no-repeat
repeat:背景图片沿X轴和Y轴方向平铺
repeat-x:背景图片沿X轴方向平铺
repeat-y:背景图片沿Y轴方向平铺
no-repeat:背景图片不做任何平铺
5.background-attachment属性
语法:background-attachment:scroll || fixed
scroll:背景图片随着页面的其余部分滚动
fixed:背景图片固定不动
注:取值fixed时,运用在html或body标签上,使用在其他标签不能达到固定效果
6.background-position属性
语法:background-position:[percentage] || [length] || [left | center | right] || [top | center | bottom]
作用:用来设置背景图片的位置
默认值:(0,0) || (0%, 0%) || (left top),其值可以是具体的百分数或数值设置(可以是负值),也可以使用关键字left、center、top、right、top、bottom配合设置,个属性定位方式:

7.CSS3中新增属性
background-origin:指定绘制背景图片的起点
background-clip:指定背景图片的显示范围
background-size:指定背景图片的尺寸大小
background-break:指定内联元素的背景图片进行平铺时的循环方式
8.CSS3背景原点属性:background-origin
作用:用来改变background-position属性的参考原点,默认起始点为左上角
旧语法格式:background-origin:padding || border || content
新语法格式:background-origin:padding-box || border-box || content-box
注:IE9+、Firefox4+、Chrome4+、Safari3+、Opera10.5+都支持新的语法格式
具有三个属性值:padding-box、border-box、content-box
padding-box(padding):默认值,决定background-position起始位置从padding的外边缘(border的内边缘)开始显示背景图片
border-box(border):决定background-position起始位置从border的外边缘开始显示背景图片
content-box(content):决定background-position起始位置从content的外边缘(padding的内边缘)开始显示背景图片
注:IE8以下版本background-origin的默认值border,背景图片的background-position是从border开始显示背景图片
浏览器兼容性:


9.CSS3背景裁切属性:background-clip,新增的第二个属性,用来定义背景图像的裁剪区域。和background-origin属性类似,接受的值有:
padding-box(背景延伸到padding的外边缘,但不会超出边框的范围)
border-box(背景图片在边框下,这个也是background-clip的默认值)
content-box(背景仅在内容区域绘制,不会超出padding和边框的范围)
语法:background-clip:border-box || padding-box || content-box
border-box:默认值,元素背景图像从元素的border区域向外裁剪,即元素边框之外的背景图片都将被裁剪掉
padding-box:元素背景图像从padding区域向外裁剪,即元素padding区域之外的背景图像将被裁剪掉
content-box:元素背景图像从content区域向外裁剪,即元素内容区域之外的背景图像将被裁剪掉
注:在HTML一个元素背景常由元素的内容(content)、内部补白(padding)、边框(border)和外部补白(margin)四部分构成

10.浏览器兼容性

对于background-clip and background-origin,自己现在理解用处不大,自己在实际中也很少用到,也许随着自己的不断深入还能有很好的体会,最主要的感悟是有的时候,我们可以不过多的去明确哪个属性的使用范围,思路不同范围不同,只能渐渐地去体会
11.CSS3背景尺寸属性
使用尺寸属性,可以指定背景图片的尺寸,可以控制背景图片在水平和垂直两个方向的缩放和控制图片拉伸覆盖背景区域的方式,甚至还可以截取背景图片。背景图片能够自适应元素盒子的大小,实现与模块大小完全适应的背景图片,避免因区块尺寸不同而需要设计不同的背景图片,在实际工作中,背景图片可以达到任意尺寸
语法:background-size:auto || <length> || <perentage> || cover || contain
auto:默认值,将保持背景图片的原始尺寸
<length>:取具体的整数值(px值),将改变背景图片的大小
<percentage>:取值为百分值,可以是0% ~ 100%。此时,同样改变背景图片的大小,但此值是相对于元素的宽度来进行计算,并不是根据背景图片的宽度来进行计算
cover:将背景图片放大,以适合铺满整个容器。但这种方法会导致背景图片失真
contain:保持背景图像的宽高比例,将背景图像缩放到宽度或高度正好适应所定义背景容器的区域
当取值是<length>和<percentage>的时候,可以取两个值,第一个是宽度,第二个是高度;当取一个值的时候,第二个值相当于设置成auto,让背景图片的高度按照比例缩放
cover PK contain:


第一张是cover,第二张是contain,所得:cover体现的是满足容器,也就是铺满容器为主;contain体现的是图片显示全为主以图片为主
浏览器兼容性:

12.内联元素背景图像平铺循环方式background-break属性
用来定义内联元素背景图像进行平铺时的循环方式,其中有三个属性值:bounding-box、each-box、continuous,分别表示三种平铺循环方式。可惜这个属性兼容目前仅属于FireFox,写成【-moz-background-inline-policy】
bounding-box:背景图像在整个内联元素中进行平铺
each-box:背景图像在行内中进行平铺
continuous:下一行的背景图像紧接着上一行中的图像继续平铺
这个属性的兼容性令人发指,自己最好亲自试验一下,对于兼容性没有什么绝对性的支持和不支持,更多的时候还是根据使用情况自己检测
13.CSS3多背景属性
能够在单一容器上使用复合的背景图像,CSS3要想达到多背景就需要多个容器;
通过CSS3的多背景属性,只需要一个容器,在CSS的background-image或者background属性中列出需要使用的所有背景图像,用逗号分开。其中的每张图片都具有background中的属性,例如可以定位、设置重复、改变背景图像大小以及其他可以单独控制的特性
语法和参数:background-(position||repeat||clip||origin||attachment)属性,相邻背景之间必须使用逗号分隔开
具体的语法:background:[background-image] | [background-position][/bckground-size] | [background-repeat] | [background-attachment] | [background-clip] | [background-origin], *
也可以把上面的缩写拆解成以下形式:
background-image:url1, url2, url3, url4 ,..., urlN;
background-repeat:repeat1,repeat2,..., repeatN;
background-position:position1,position2,...,positionN;
background-size:size1,size2,...sizeN;
background-attachment:attachment1,attachment2,...,attachmentN;
background-clip:clip1,clip2,...,clipN;
background-origin:origin1,origin2,...,originN;
background-color:color;
注:除background-color(只能设置一个,设置多个将是一种致命的语法错误)之外,其他属性都可以设置多个属性值,前提是元素有多个背景图像存在,多个属性值之间必须使用逗号隔开
在多背景图像中,先声明的背景图片将会居于最上层,最后指定的背景图片将放在最底层
在CSS2中多背景,第一种是使用多个容器,第二种是把多张图片合并到一张图片上
多背景图片兼容性:

CSS3多背景基础背景属性不需要加前缀,但是使用background-size\background-clip\background-origin时,还是需要添加浏览器前缀的
CSS3背景温故的更多相关文章
- css3 背景记
css3 背景 css背景主要包括五个属性: background-color background-color:transparent || <color> 用来设置元素的背景颜色,默认 ...
- CSS自学笔记(11):CSS3背景和边框
CSS3 背景 在CSS3中新增了多个关于背景的属性,可以让我们对背景有了更多更好的操作,减少用第三方工具对背景图片进行修改美化. CSS3中主要是通过定义backgrounp中的各个属性来控制背景( ...
- 第七十九,CSS3背景渐变效果
CSS3背景渐变效果 学习要点: 1.线性渐变 2.径向渐变 本章主要探讨HTML5中CSS3背景渐变功能,主要有两种渐变方式:线性渐变和径向 (放射性)渐变. 一.线性渐变 linear-gradi ...
- 从零开始学习前端开发 — 17、CSS3背景与渐变
一.css3背景切割: background-clip:border-box|padding-box|content-box; 作用: 用来设置背景的可见区域 a) border-box 默认值,背景 ...
- css3背景颜色渐变属性 兼容性测试基础环境为:windows系统;IE6.0+, Firefox4.0+, Chrome4.0+, Safari4.0+, Opera15.0+
css3背景颜色渐变属性 兼容性测试基础环境为:windows系统:IE6.0+, Firefox4.0+, Chrome4.0+, Safari4.0+, Opera15.0+ 语法: <li ...
- [转]真正了解CSS3背景下的@font face规则
本文转自:http://www.zhangxinxu.com/wordpress/2017/03/css3-font-face-src-local/ by zhangxinxu from http:/ ...
- css3 背景background
Css3背景<background> Css3包含多个新的背景属性,它们提供了对背景更强大的控制.可以自定义背景图的大小,可以规定背景图片的定位区域,css3还允许我们为元素使用多个背景图 ...
- CSS3背景 制作导航菜单综合练习题
CSS3背景 制作导航菜单综合练习题 小伙伴们,根据所学知识,使用CSS3实现下图的导航菜单效果 任务 1.制作导航圆角 提示:使用border-radius实现圆角 2.制作导航立体风格 提示:使用 ...
- css3-3 css3背景样式
css3-3 css3背景样式 一.总结 一句话总结:网站页面上的小图标集成在一张大图上面,是因为降低服务器负载,网站上的那些图片都可以下载下来,源码那里,或者工具那里. 1.background:# ...
随机推荐
- PhoneGap介绍及简单部署
一.什么是PhoneGap: PhoneGap是一个自由开放源码的开发工具和框架,允许利用HTML + JavaScript + CSS的强大功能在多个手机平台上开发程序,开发出来的程序经过在各自的平 ...
- java中paint方法和paintComponent方法的不同
/* 1.由Component.java源代码中可以看见其中的paint()方法体是空的,在Container中重写了该方法,其子类Window等也重写了该方法 2.由JComponent.java源 ...
- Datatables 在asp.net mvc中的使用
前言 最近使用ABP(ASP.NET Boilerplate)做新项目,以前都是自己扩展一个HtmlHelper来完成同步/异步分页,但是有个地方一直不满意,排序太费劲. 以前接触过一点点的Datat ...
- .NET 三层架构的简单规划
今天心血来潮简单看了下petshop4.0的源代码,他就是用三层架构来实现的.现在简单的做下总结. 首先我们先看下petshop的三层架构. 1 WEB 表示层 2 Model 业务实体 3 BLL ...
- Quartz应用实践入门案例二(基于java工程)
在web应用程序中添加定时任务,Quartz的简单介绍可以参看博文<Quartz应用实践入门案例一(基于Web应用)> .其实一旦学会了如何应用开源框架就应该很容易将这中框架应用与自己的任 ...
- Activity的四种launchMode《转》
转自:http://blog.csdn.net/liuhe688/article/details/6754323/ Activity的四种launchMode. launchMode在多个Activi ...
- 坑人的微信新版支付(V3.3.6)
现在微支付的需求越来越多,最近刚接到一个需要微支付的项目,于是身为程序猿的我拿到最新的微信支付接口文档(3.3.6)就开始研究微信支付.本以为应该跟支付宝差不多的感觉结果被坑了.恕在下无能, ...
- linux专题一之文件描述符、重定向、管道符、tee命令
本节讨论一下几个问题: 1. 文件描述符. 2. 重定向. 3. 管道符 4. tee的用法. 1. 文件描述符. 在linux系统中一切皆文件.文件夹和设备都是文件.如何用来区别不同的文件呢?这里的 ...
- 【转】ASP.NET"正在中止线程"错误原因
最近做的系统中老出现的一些问题不太明白,在使用 Response.End.Response.Redirect 或 Server.Transfer 时出现 ThreadAbortException , ...
- 我所理解的readonly和const
最近要给学校软件小组新成员讲几次课,所以把很多以前懒得学习的和模糊不清的知识点,重新学习了一下. MSDN是这样解释的: readonly 关键字与 const 关键字不同. const 字段只能在该 ...