为什么我的徽标没有出现在我的div的右上角?
.service-title {
width: 100%;
font-size: 24px;
line-height: 1.1em;
padding: 1em;
background-position: right top;
background: orange;
background-image: url('http://vectorlogo.biz/wp-content/uploads/2013/01/GOOGLE-VECTORLOGO-BIZ-128x128.png');
background-repeat: no-repeat;
}

<h1 class="service-title"><a href="/">test</a></h1>
&#13;
答案 0 :(得分:4)
这种情况正在发生,因为您使用background-position
简写覆盖了background
属性。
背景指定:
其缩写的初始值的串联 属性:
背景图像:无
背景位置:0% 0%
背景大小:自动自动
背景重复:重复
background-origin:padding-box
background-style:本身就是一个 简而言之,它的初始值是它自己的速记的串联 属性
背景剪辑:border-box
背景颜色: 透明
(来源:mdn background)
因此,当您设置background: orange
(在CSS中background-position
之后)时,它会隐式提供background-position: 0% 0%;
,因此它会覆盖您的背景位置语句。
您需要在background-position
速记之后放置background
属性,以便不会覆盖它:
.service-title {
font-size: 24px;
line-height: 1.1em;
padding: 1em;
background:orange;
background-position: right top;
background-image:url('http://vectorlogo.biz/wp-content/uploads/2013/01/GOOGLE-VECTORLOGO-BIZ-128x128.png');
background-repeat:no-repeat;
}
<h1 class="service-title bg-orange icon-logo-clipped"><a href="/">test</a></h1>
或指定background-color
而不是background
速记,因此不会覆盖背景位置。
.service-title {
font-size: 24px;
line-height: 1.1em;
padding: 1em;
background-position: right top;
background-color:orange;
background-image:url('http://vectorlogo.biz/wp-content/uploads/2013/01/GOOGLE-VECTORLOGO-BIZ-128x128.png');
background-repeat:no-repeat;
}
<h1 class="service-title bg-orange icon-logo-clipped"><a href="/">test</a></h1>
答案 1 :(得分:1)
background: orange;
行超过了background-position
。这是因为background
是定义所有其他背景属性的简写属性,例如大小,颜色,图像,当然还有位置。这里是
MDN - shorthand background
property文章。
将background
更改为background-color
或将其放在background-position
.service-title {
width: 100%;
font-size: 24px;
line-height: 1.1em;
padding: 1em;
background-position: right top;
background-color: orange;
background-image: url('http://vectorlogo.biz/wp-content/uploads/2013/01/GOOGLE-VECTORLOGO-BIZ-128x128.png');
background-repeat: no-repeat;
}
<h1 class="service-title"><a href="/">test</a></h1>
答案 2 :(得分:0)
使用此:
.service-title {
width: 100%;
font-size: 24px;
line-height: 1.1em;
padding: 1em;
background:orange;
background-image:url('http://vectorlogo.biz/wp-content/uploads/2013/01/GOOGLE-VECTORLOGO-BIZ-128x128.png');
background-repeat:no-repeat;
background-position: right top;
}