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:# ...
随机推荐
- photoshop学习目录
前面的话 前端工程师最基本的工作是切图.photoshop用的6不6,对于工作效率有很大的影响.小火柴将前端工程师需要掌握的photoshop的知识和技能进行了梳理和归纳,总结成以下目录 目录 前端工 ...
- Bjarne Stroustrup对C++程序员的忠告
转自:http://blog.csdn.net/adm_qxx/archive/2007/05/20/1617488.aspx 第1章 致读者 [1] 在编写程序时,你是在为你针对某个问题的解决方 ...
- BonBon - 使用 CSS3 制作甜美的糖果按钮
BonBon 是一组使用 CSS3 制作的甜美的糖果按钮样式.在过去,我们都是使用图片或者 JavaScript 来实现漂亮的按钮效果,随着越来越多的浏览器对 CSS3 的支持和完善,使用 CSS3 ...
- js基础篇——call/apply、arguments、undefined/null
a.call和apply方法详解 call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象 ...
- SQL Server代理(3/12):代理警报和操作员
SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 如我们在这个系列的文章里所见,SQL Se ...
- postgres中的视图和物化视图
视图和物化视图区别 postgres中的视图和mysql中的视图是一样的,在查询的时候进行扫描子表的操作,而物化视图则是实实在在地将数据存成一张表.说说版本,物化视图是在9.3 之后才有的逻辑. 比较 ...
- c#设计模式之简单工厂
1.面向对象的3大属性,封装.继承.多态,以一个加单的计算机为例: 创建一个父类Operation 有两个属性 和一个计算方法(虚方法),便于子类重写: public class Operation ...
- 使用Graphviz绘图(一)
前言 日常开发或者编写课程论文时,除了代码文档的编写,其中一个很重要的部分就是需要绘制流程图.示意图 绘制流程图有很多工具,一般常见的就有如下几种: Word.PPT等办公软件 Viso以及开源的Di ...
- ASP.NET MVC案例——————拦截器
摘要 本文将对“MVC公告发布系统”的发布公告功能添加日志功能和异常处理功能,借此来讨论ASP.NET MVC中拦截器的使用方法. 一个小难题 我们继续完善“MVC公告发布系统”, ...
- PHP面试题汇总
1.用PHP打印出前一天的时间格式是2014-01-13 12:10:21(2分) 2.echo(),print(),print_r()的区别(3分) 3.能够使HTML和PHP分离开使用的模板(1分 ...