我有一个标题h2
html元素后跟一个span
标记。两者都应该以一行显示。
我的目的是显示文字,然后是评级星标。我正在使用Turn a number into star rating display using jQuery and CSS中的html + css,如下所示:
<h2 style="display:inline">title
<span class="stars" style="width:150px">
<span style="width:100px;"/>
</span>
</h2>
span.stars, span.stars span {
display: block;
background: url(stars.png) 0 -16px repeat-x;
height: 16px;
}
span.stars span {
background-position: 0 0;
}
这很好用,但它引入了一个换行符。我该如何预防?
当我更改以下内容时,它会起作用:
span.stars, span.stars span {
display: inline-block;
}
但这是实现这一目标的正确方法吗? inline-block
在某些浏览器中不会导致问题吗?
答案 0 :(得分:1)
从星级中删除display:block。它总是引入像段落there is
这样的换行符<h2 style="display:inline">title
<span class="stars" style="width:150px">
<span style="width:100px;"/>
</span>
</h2>
span.stars, span.stars span {
background: url(stars.png) 0 -16px repeat-x;
height: 16px;
}
span.stars span {
background-position: 0 0;
}
答案 1 :(得分:-1)
只需使用下面的CSS。我想你会得到你想要的东西。
<h2>
<span class="stars" style="width:150px">
<span style="width:100px;"></span>
</span>
title
</h2>
h2{
position:relative;
}
span.stars{
background-image: url(http://henty-estate.com.au/wp-content/uploads/2012/07/5-stars.jpg);
background-size: 100% 100%;
position:relative;
display:inline-block;
height:16px;
}