最佳答案
我试图混合 background-image和 background-size属性在一个人手不足的 background属性。基于 W3C 文档 的 background-size应该在 background-position属性后面用斜杠(/)分隔。
W3C 的例子:
p { background: url("chess.png") 40% / 10em gray round fixed border-box; }等同于:
p { background-color: gray; background-position: 40% 50%; background-size: 10em 10em; background-repeat: round round; background-clip: border-box; background-origin: border-box; background-attachment: fixed; background-image: url(chess.png) }
MDN 也是这么说的,我还找到了 这个和 这个关于 CSS3背景属性的简写文章来解释这一点。
但这不管用!如果 background-size和 background-position对于 background-position-x和 background-position-y有两个不同的值,或者对于 background-size有相同的值,那么如何创建一个简写的 background属性也是不清楚的。不清楚斜线(/)是如何发生的?我的 Chrome15没有使用 这个例子。
例如,我试图做一个简短的 CSS 代码:
div {
background: url(http://www.placedog.com/125/125)
0 0 / 150px 100px
repeat no-repeat
fixed border-box padding-box blue;
height: 300px;
width:360px;
border: 10px dashed magenta;
}
这是工作 (JSFiddle)
body{
background-image:url(http://www.google.com/intl/en_com/images/srpr/logo3w.png);
background-position:200px 100px;
background-size:600px 400px;
background-repeat:no-repeat;
}
这不工作 (Jsfiddle)
body{
background:url(http://www.google.com/intl/en_com/images/srpr/logo3w.png) 200px 100px/600px 400px no-repeat;
}
这不是工作太 (Jsfiddle)
body{
background:url(http://www.google.com/intl/en_com/images/srpr/logo3w.png) 200px/400px 100px/600px no-repeat;
}