javascript - Twitter Bootstrap 上的图像悬停

标签 javascript jquery css twitter-bootstrap hover

我叫 Enrique,我在 Twitter Bootstrap 上遇到了 :hover 属性的问题。

我做了一个 5 星的评级系统,但是当一颗星“悬停”时,星星开始闪烁,真是一团糟

当我在没有任何脚本的情况下使用同一个系统时,它工作正常,这就是为什么我认为问题出在 Bootstrap 或 Jquery 上。

这是我正在开发的网站:http://apostilaz.pilha.inf.br/detalhaapostila

星星位于写有 (BAIXAR APOSTILA) 的绿色大按钮上方,我知道当它们为空时很难看到。

这是一个没有任何 JS 的相同代码的 jsfiddle 和下面的代码:

http://jsfiddle.net/EnriqueSampaio/kb9a8/

CSS

.avalia {
    width: 90px;
    height: 17px;
    margin: 0 0 20px 0;
    padding: 0;
    list-style: none;
    clear: both;
    position: relative;
    background: url(../img/estrelas.png) no-repeat 0 0;
}

.semestrela {
background-position: 0 0;
}

.umaestrela {
background-position: 0 -18px;
}

.duasestrelas   {
background-position: 0 -36px;
}

.tresestrelas   {
background-position: 0 -54px;
}

.quatroestrelas {
background-position: 0 -72px;
}

.cincoestrelas   {
background-position: 0 -90px;
}

ul.avalia li  {
cursor: pointer;
float: left;
text-indent: -999em;
}

ul.avalia li a  {
position: absolute;
left: 0;
top: 0;
width: 18px;
height: 17px;
text-decoration: none;
z-index: 200;
}

ul.avalia li.uma a  {
left: 0;
}

ul.avalia li.duas a {
left: 17px;
}

ul.avalia li.tres a {
left: 34px;
}

ul.avalia li.quatro a   {
left: 51px;
}

ul.avalia li.cinco a    {
left: 68px;
}

ul.avalia li a:hover    {
z-index: 2;
width: 90px;
height: 17px;
overflow: hidden;
left: 0;
background: url(../img/estrelas.png) no-repeat 0 0;
transition:none !important;
}

ul.avalia li.uma a:hover    {
background-position: 0 -18px;
}

ul.avalia li.duas a:hover    {
background-position: 0 -36px;
}

ul.avalia li.tres a:hover    {
background-position: 0 -54px;
}

ul.avalia li.quatro a:hover    {
background-position: 0 -72px;
}

ul.avalia li.cinco a:hover    {
background-position: 0 -90px;
}

HTML

<ul class="avalia semestrela">
    <li class="uma"><a href="#fakelink" title="1 Estrela">1</a></li>
    <li class="duas"><a href="#fakelink" title="2 Estrelas">2</a></li>
    <li class="tres"><a href="#fakelink" title="3 Estrelas">3</a></li>
    <li class="quatro"><a href="#fakelink" title="4 Estrelas">4</a></li>
    <li class="cinco"><a href="#fakelink" title="5 Estrelas">5</a></li>
</ul>

谢谢!

最佳答案

稍微检查一下您的页面后,我发现您的脚本没有问题,问题出在其中一个 css 文件上。这个:

<link rel="stylesheet" type="text/css" href="http://apostilaz.pilha.inf.br/public/plugins/ui/css/flat-ui.css" media="all">

flat-ui.cssa 标签添加了特殊的 CSS:

a {
 color: #16a085;
 text-decoration: none;
 -webkit-transition: 0.25s;
 -moz-transition: 0.25s;
 -o-transition: 0.25s;
 transition: 0.25s;
 -webkit-backface-visibility: hidden;
}

要使您的 :hover 星星正常工作,您需要删除 transition 属性,这是导致该行为的原因,您不能在不选择其他星星的情况下切换星星一。

PD:已使用 google chrome 检查器在您的页面上进行测试

关于javascript - Twitter Bootstrap 上的图像悬停,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20289197/

相关文章:

php - 如何将 PHP 变量发送到模式 Bootstrap 并将其作为 PHP 变量接收?

javascript - 使用动态内容动态复制 div

html - 如何设置 html 元素宽度以在浏览器窗口调整大小时调整大小?

javascript - Angular js + ng-repeat + 字母数字索引不起作用

javascript - 检查 .map() 方法中的匹配字符串

javascript - 如何使用带有 Backbone.js 库的 jQuery 添加事件类

php - 社交网络墙发布逻辑不起作用

html - CSS @font-face 不适用于 gotham 字体

javascript - 如何在Aptana中勾勒道场的类(class)代码?

javascript - $过滤器不起作用