鼠标经过一个div时 , 如何让另一个div以过渡效果高度增加

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了鼠标经过一个div时 , 如何让另一个div以过渡效果高度增加相关的知识,希望对你有一定的参考价值。

鼠标经过一个div1时 , 如何让另一个div2以过渡效果高度增加 . css能实现吗?

我知道要用transition这个属性添加过渡效果 , 但是这个属性只能当鼠标放在自身上才会生效产生过渡效果 , 也就是 div2:hoverheight:100px才行 . 现在我想要的是当鼠标经过div1时 , 意思就是div1:hover .div1height:100px , 但是这样写transition是不会生效的 , 请问各路大神有什么好办法吗

参考技术A 理论上有实现办法,可以试一下
1.hover时用amimation执行一次css方法@keyframes name。
2.css name方法中用transform动画执行你想要效果。
3.鼠标离开时用同样的逻辑执行另一个方法将样式再还原回去。
参考技术B css实现不了,js可以实现,代码较简单。追问

那能麻烦您贴下代码嘛 , 用js

参考技术C 就把div2放在div1里面,.div:hover .div2就行了追问

这样div2会有过渡效果吗? 我是放在div1里面的啊 . 没有用!

追答

css可以实现的,我还专门写了一遍

 .div1
width:100px;
height:100px;
background-color:red;

.div2
width:50px;
height:50px;
background-color:blue;
transition:height 2s;

.div1:hover .div2
height:200px;

本回答被提问者和网友采纳
参考技术D 这么简单的问题还发出来,看流程:onmouseover☞设置2个参数一个speed,一个width,鼠标经过时改变上面2个参数,当鼠标移出时,恢复到初始值。追答

我没看清题目就回答是我的错js比较好实现css不知道

鼠标经过弹出div

我想实现这样的效果,鼠标滑过,弹出一个div,能够点击里面的链接,鼠标移开后,div消失。

参考技术A 有两个方法,一个是js的,优点能兼容所有浏览器还能控制弹出时间和方式,缺点是代码较多,需要懂一点js知识;还有个方法是css,设置隐藏层,当鼠标移到对应的区域,显示隐藏层,优点是代码少容易理解和应用,缺点是ie6不支持。如:
<style>
.aawidth:100px;height:30px;position:relative
.aa .bbwidth:100px;height:60px;position:absolute;display:none;border:1px solid #ddd;top:30px;left:0

.aa:hover .bbdisplay:block
</style>

<div class="aa">移到我上面看看
<div class="bb">显示结果</div>
</div>本回答被提问者和网友采纳

以上是关于鼠标经过一个div时 , 如何让另一个div以过渡效果高度增加的主要内容,如果未能解决你的问题,请参考以下文章

js怎么实现鼠标经过一个div,div自动向右边平滑缓慢的移动50px

如何触发包含三个重叠 div 元素的 :hover 过渡(维恩图)

如何触发css3过渡动画

jQuery 通过鼠标摇拽改变div的大小

当 div 内容改变和 div 增长时 CSS3 过渡

鼠标经过弹出div