《CSS揭秘》技巧三中提到,
background: url("0.jpg") no-repeat #58a bottom right;
等价于:
background: url("0.jpg") no-repeat #58a 100% 100%;
为什么bottom right和100% 100%等价呢?请看下面:
<b>background-position百分比计算公式</b>
background-postion:x y;
x:{容器(container)的宽度—背景图片的宽度}*x百分比,超出的部分隐藏。
y:{容器(container)的高度—背景图片的高度}*y百分比,超出的部分隐藏。
<head>
<meta charset="UTF-8">
<title>bg-position中百分比定位原理</title>
<style>
body{
margin: 0;
padding:0;
}
.wangge{
width: 500px;
height: 500px;
background: url("wanggeBG.jpg") no-repeat;
}
.bgOrigin{
color: white;
width: 500px;
height: 500px;
background: url("0.jpg") no-repeat 50% 50%;
background-origin: content-box;
}
</style>
</head>
<body>
<div class="wangge">
<div class="bgOrigin"></div>
</div>
</body>
背景图的格子是每个100px(当然边框占据一定像素),蓝色div是500px宽高。做这个就是为了验证以上原理的正确性,中间小希的图片是250px宽高,按照原理所说,
X:(500-250)*50%=125px;
从中大体可以看出,小希的左边缘是从125像素开始的,
Y同理,所以验证成功。