background用于在一个背景中设置背景属性,像css其他属性一样,有两种表示方法
位置含义解释:
总结:如果要用这种形式,位置①和位置②至少写一个,应该值得注意的是,位置③,④,⑤,⑥都是为了修饰位置②,所以但不写位置②的时候,其他位置也没有写的必要了。
以上位置在写的时候无先后顺序。但是习惯一个好的顺序非常必要。
1.background-color
用于设置背景颜色,默认元素背景色为透明(transparent)
一共三种表示法,如下:
background-color: red;
background-color: #ccc;
background-color: rgb(255, 255, 255);
2.background-image
设置背景图片,默认无图片
background-image: url(img.png);
3.background-position
设置背景图片的位置,相对于元素进行定位,默认位置左上角(0,0),可以用的表示方法
方向位置表示法,
top left
top center
top right
center left
center center(==center)
center right
bottom left
bottom center
bottom right
background-position: top left;
background-position: 10px 10px;
background-position: 10% 10%;
4.background-attachment
设置背景图的滚动方式,默认背景图像会随着页面其余部分的滚动而移动(scroll)
background-attachment: fixed;
5.background-repeat
设置背景图片的平铺显示方式,默认背景图像将在垂直方向和水平方向重复。
background-repeat: no-repeat;
至此,简写形式,具体形式的background讲完了,接下来说说background的其他属性
1.background-size
用于设置背景图的尺寸大小,其实也挺常用的一个属性。默认值auto,其他选项值(数值法,百分比法,cover,contain),详解如下:
<html>
<head>
<title>title>
<style type="text/css">
div{
width: 200px;
height: 200px;
background-image: url(1111.png);
background-repeat:no-repeat;
border: 20px dotted #ccc;
background-size: cover;
}
style>
head>
<body >
<div>div>
body>
html>
<html>
<head>
<title>title>
<style type="text/css">
div{
width: 400px;
height: 400px;
background-image: url(1111.png);
background-repeat:no-repeat;
border: 20px dotted #ccc;
background-size: cover;
}
style>
head>
<body >
<div>div>
body>
html>
图看到这里,相信大家已经看出点什么了,在使用background-size:cover时候,总结:
优点:图片不失真(不拉伸变形),整个背景区域不会出现背景色(默认白色),
缺点:图片变得不完整,会隐藏一部分,
无论背景图如何,总会拉伸或压缩,使得背景图完全覆盖背景区域。多余的则向右或向下隐藏。
contain,容纳,即将背景图片等比缩放至某一边紧贴容器边缘为止。(把背景图片扩展至最大尺寸,以使背景图片其宽度和高度完全适应背景区域),
①当背景图片小于背景区域时候,背景就会出现背景色(默认白色),如下图:
<html>
<head>
<title>title>
<style type="text/css">
div{
width: 420px;
height: 420px;
background-image: url(1111.png);
background-repeat:no-repeat;
border: 1px solid red;
}
style>
head>
<body >
<div>div>
body>
html>
<html>
<head>
<title>title>
<style type="text/css">
div{
width: 300px;
height: 300px;
background-image: url(1111.png);
background-repeat:no-repeat;
border: 20px dotted #ccc;
background-size: contain;
}
style>
head>
<body >
<div>div>
body>
html>
通过上面的例子,当时用background-size:contain时候,总结:
优点:背景图不失真(不拉伸变形),且全部出现在背景区域里面
缺点:背景区域会出现背景色(默认白色)。
无论背景图如何,总会拉伸会压缩,使得背景图完全适应背景区域。剩余的区域会出现背景色(默认白色)
2.background-clip(css3新属性)
规定背景的绘制区域,包括背景颜色和背景图片的绘制方法
可选的值:(padding-box,content-box,border-box),效果图如下:
3.background-origin(css3新属性)
规定背景图片的定位位置,通过上下两图可以认真对比background-origin和background-clip的区别
可选的值:(padding-box,content-box,border-box),效果图如下:
background的属性也就总结完了.