【问题标题】:hover effect on div whilst hover over whole a tag [duplicate]悬停在div上的效果,同时悬停在整个标签上[重复]
【发布时间】:2017-01-10 12:33:21
【问题描述】:

好的,我正在尝试在我的 div 上获得悬停效果 (<div class="thumbnail-green-test">) 我可以简单地做到这一点(下面的代码)

我需要的是 div (<div class="thumbnail-green-test">) 如果使用悬停在 H3 以及 div 上,但只有div 上显示的效果。

部分工作

html

 <div class="col-md-3">
            <a href="#tab4" data-toggle="tab">
                <div class="thumbnail-green-test">
                    here be image
                </div>
                <h3 class="">test</h3>
            </a>
        </div>

css

.thumbnail-green-test:hover {
    border: 10px solid hotpink !important;
}

我尝试过的

这并没有给我我想要的它给整个区域的效果,我只想要*div with "image be here"* 上的边框,但如果你将鼠标悬停在整个部分上就会出现。

html

<div class="col-md-3">
            <div class="thumbnail-green-test">
            <a href="#tab4" data-toggle="tab">
                <div class="">
                    here be image
                </div>
                <h3 class="">test</h3>
            </a>
        </div>
    </div>

【问题讨论】:

  • 你能做个小提琴吗
  • 是的,4 分钟
  • 可以更改标记吗?还是我们有限制?

标签: jquery html css


【解决方案1】:

div.col-md-3:hover .thumbnail-green-test {
  border: 10px solid hotpink !important;
}
<div class="col-md-3">
  <a href="#tab4" data-toggle="tab">
    <div class="thumbnail-green-test">
      here be image
    </div>
    <h3 class="">test</h3>
  </a>
</div>

【讨论】:

  • 完美,6分钟后我可以接受
  • 解释呢?
  • @dippas 它是一个常规的 CSS。没有魔法
  • 我同意,这是一个简单的问题,我今天早上无法解决。谢谢@Andy
  • 对你来说没有魔法,但 OP 有问题,所以至少应该有一些解释,而不仅仅是转储代码
【解决方案2】:

您只能使用 css 来做到这一点

.col-md-3:hover .thumbnail-green-test {
   border: 10px solid hotpink !important;
}

或使用jquery

$('.col-md-3').mouseenter(function(){
    $('.thumbnail-green-test').css({"border-color": "hotpink", 
             "border-width":"10px", 
             "border-style":"solid"});
});
$('.col-md-3').mouseleave(function(){
    $('.thumbnail-green-test').removeAttr( 'style' );
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="col-md-3">
            <a href="#tab4" data-toggle="tab">
                <div class="thumbnail-green-test">
                    here be image
                </div>
                <h3 class="">test</h3>
            </a>
        </div>

【讨论】:

  • 这似乎根本不起作用 ► jsfiddle.net/y6nf0d7s
  • @Fran,你的小提琴错了。
  • 不,它正在使用您的确切 css! - 你的选择器.thumbnail-green-test div:hover{ 不起作用的原因是因为它正在寻找一个div inside 一个不存在类.thumbnail-green-test 的元素。因此,您的代码不起作用。里面没有div,因为div 本身就有这个类。
  • jquery 加 1,但我同意 Andy 的回答效果很好
  • @BenjaminOats 答案$('.thumbnail-green-test').find('div').css('border','10px solid hotpink !important;'); 中指定的JQuery 是错误的,因为它在.thumbnail-green-test 中查找div,这不是您的标记。至少这个答案现在已经更新了 CSS 以匹配另一个正确的答案,所以我猜 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-11-07
  • 1970-01-01
  • 2016-06-09
  • 2017-10-25
  • 1970-01-01
  • 1970-01-01
  • 2010-12-04
相关资源
最近更新 更多