### **一、background-size背景图像的尺寸**
background-size1个或2个值,它的类型可以是像素(px)、百分比(%)或是auto,还可以是cover和contain。
<br/>
<br/>
#### **属性**
**length**:用**像素(px)**设置背景图像的高度和宽度;第一个值设置宽度,第二个值设置高度。如果只设置一个值,则第二个值默认为"auto"。
<br/>
<br/>
**percentage**(百分比):以父元素的百分比来设置背景图像的宽度和高度;第一个值设置宽度,第二个值设置高度。如果只设置一个值,则第二个值默认为"auto"。
<br/>
<br/>
**cover**:把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。宽高等比例缩放,背景图像的某些部分可能会超出背景区域,无法显示在背景区域中
<br/>
<br/>
**contain**:把背景图像扩展至最大尺寸,宽高等比例缩放,使宽度和高度完全适应背景区域,图像会完全显示在背景区域,如宽度或高度其中一条边已完全覆盖对应的区域,另一条边没有覆盖,则不会在缩放,会留有空白。
<br/>
<br/>
**背景图片全屏**显示css3代码:
用background-size可以实现这个效果,用fixed(background-attachment 属性)和center(background-position 属性)定位背景图,然后用background-size来使图片铺满,具体css如下:
~~~
.test {
background: url(bg.jpg) no-repeat center center fixed;
-webkit-background–size: cover;
-moz-background–size: cover;
-o-background–size: cover;
background–size: cover;
}
~~~
适用于以下浏览器
Safari 3+
Chrome
IE 9+
Opera 10+ (Opera 9.5 支持background-size属性 但是不支持cover)
Firefox 3.6+
这里ie8及以下版本不支持,这些蛋疼浏览器则需要添加下面的css来设置兼容
~~~
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=’.bg.jpg’, sizingMethod=’scale’);
-ms-filter: “progid:DXImageTransform.Microsoft.AlphaImageLoader(src=’bg.jpg’, sizingMethod=’scale’)”;
~~~
这个用滤镜来兼容的写法并不是很完美,首先是图片路径,这里只能是相对于根目录的路径,或者用绝对路径;然后是图片纵横比改变了,是拉伸铺满的形式。尽管如此,总比留空白好多了吧
<br/>
<br/>
<br/>
### **二、background-origin**
相对于内容框来定位背景图像
background-origin: padding-box|border-box|content-box;
padding-box:从内边距(padding)区域开始显示背景;(默认值)
border-box:从边框区(border)域开始显示背景;
content-box: 从内容区域(即去除边框和内边距)区域开始背景。
`注意:background-origin主要是用来控制背景图片的background-position位置,并且其只能控制背景图片。`
<br/>
<br/>
<br/>
### **三、Background-clip**
主要是用来确定背景的裁剪区域,换句话说,就是如何控制元素背景显示区域
**语法:**
background-clip: border-box|padding-box|content-box;
border-box:背景在border边框开始显示,从border向外裁剪,也就是超出边框部分将被裁剪掉。(默认值)
padding-box:景在padding开始显示,从padding区域向外裁剪,超过padding区域的背景将被裁剪掉;
content-box:背景在内容content区域开始显示,从content区域向外裁剪,超过context区域的背景将被裁剪掉;
- 布局
- display:table布局
- display:flex弹性布局
- html
- 1.1关于文字小技巧
- 1.2加载
- 1.3苹果和安卓样式兼容问题
- 1.4结构技巧
- 1.5兼容ie7,ie8技巧
- css
- 1.1内容不够,页面固定在底部
- 1.2 css属性书写顺序
- 1.3font和line-height之CSS代码书写顺序不同,导致显示效果不一样
- 1.4 flex设置成1和auto有什么区别
- 1.5带三角形的对话框
- 1.6css选择器
- 1.6.1通用兄弟选择器E ~ F
- 1.6.2相邻兄弟选择器E + F
- 1.6.3 CSS3结构选择器
- 1.6.4 属性选择器
- 1.6.7 class^=,class*= ,class$= 的含义
- 1.7伪类
- 1.7.1:not(s)
- 1.9inherit和 initial
- 2.0 css技巧
- css3
- 1.2 背景background
- 1.3 transform
- 1.3.1移动translate
- 1.3.2缩放scale
- 1.3.3旋转rotate
- 1.3.4扭曲skew
- 1.4 Transition
- 1.5 animate
- 1.6 calc()
- 1.7 Gradients渐变
- 1.8 backface-visibility
- 1.9 text-size-adjust
- sass知识点
- 1.1sass写法转化
- 1.1.1 sass的转换写法
- 1.2 & 嵌套写法
- 1.2变量
- 1.2.1 默认值
- 1.2.2 全局变量和局部变量
- 1.2.3 嵌套
- 1.2.4 伪类选择器
- 1.2.5变量用井号花括号包裹
- 1.2.6 多个变量一起声明
- 1.3混合宏
- 1.3.1不带参数的混合宏
- 1.3.2传一个不带值的参数
- 1.3.3传多个不带值的参数
- 1.3.4传一个参数的值
- 1.3.5传多个参数的值
- 1.3.6参数变量名后面加...(省略号)
- 1.4文件导入
- 1.5继承@extend
- 1.6占位符%
- 1.7混合宏VS继承VS占位符
- 1.8 @media在sass中写法
- 1.9 @content的作用
- sass基本运算
- 1.1[Sass运算]加法
- 1.2[Sass运算]减法
- 1.3[Sass运算]乘法
- 1.4[Sass运算]除法
- sass函数
- 1.1 @if函数
- 1.2for函数
- 1.3 while函数
- 1.4 each循环
- 函数
- 1.1一些函数的意思
- 1.2if else函数
- 1.3 i++和++i的区别
- 1.4for函数
- UI设计规则
- 1.1字体
- 1.2尺寸
- 1.3 注意点
- 1.4 界面设计注意点