Html CSS:过渡元素不会影响其他元素
我想做这个过渡效果,但它只对第一个div有效,在周一,它旨在影响第一个div,什么都没有发生Html CSS:过渡元素不会影响其他元素,html,css,css-transitions,Html,Css,Css Transitions,我想做这个过渡效果,但它只对第一个div有效,在周一,它旨在影响第一个div,什么都没有发生 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>test</title> <style type="text/css"> #firstElement:hover + #secondE
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>test</title>
<style type="text/css">
#firstElement:hover + #secondElement {
color:red;
}
#secondElement:hover + #firstElement {
color:blue;
}
</style>
</head>
<body>
<p id="firstElement">Hover</p>
<p id="secondElement">Hello</p>
</body>
</html>
测试
#第一个元素:悬停+第二个元素{
颜色:红色;
}
#第二个元素:悬停+第一个元素{
颜色:蓝色;
}
悬停
您好
首先,您需要将转换设置为如下元素(如果您指的是转换而不是悬停):
#firstElement:hover + #secondElement {
color:red;
transition:color 0.5s ease; /* this is an example */
}
#secondElement:hover + #firstElement { /* this is not right selector */
color:blue;
transition:color 0.5s ease; /* this is an example */
}
第二,CSS中并没有后退,只需将鼠标悬停在第一个元素上,即可更改第二个元素的颜色
为此,可以使用jQuery
使用以下JQuery代码:
$("#secondElement").hover(function(){
$("#firstElement").toggleClass("firstcolor");
});
并添加以下CSS:
.firstcolor{
color:blue;
}
注意:这不是唯一的方法首先,您需要将转换
(如果您的意思是转换而不是悬停)设置为如下元素:
#firstElement:hover + #secondElement {
color:red;
transition:color 0.5s ease; /* this is an example */
}
#secondElement:hover + #firstElement { /* this is not right selector */
color:blue;
transition:color 0.5s ease; /* this is an example */
}
第二,CSS中并没有后退,只需将鼠标悬停在第一个元素上,即可更改第二个元素的颜色
为此,可以使用jQuery
使用以下JQuery代码:
$("#secondElement").hover(function(){
$("#firstElement").toggleClass("firstcolor");
});
并添加以下CSS:
.firstcolor{
color:blue;
}
注意:这不是唯一的方法psuedo悬停效果仅适用于父子关系
因此,如果你有一个菜单,其中玩具是父母,芭比娃娃、汽车卡车和乐高积木是三个子元素,那么你可以学习psuedo课程
例如,如果你这样做了
#toys:hover #barbiedolls { background: red; }
那就行了。但是如果你试着去做
#barbiedolls:hover #toys { background: red; }
那是行不通的。也不会
#barbiedolls:hover #cartrucks { background: red; }
psuedo悬停效果仅适用于父子关系
因此,如果你有一个菜单,其中玩具是父母,芭比娃娃、汽车卡车和乐高积木是三个子元素,那么你可以学习psuedo课程
例如,如果你这样做了
#toys:hover #barbiedolls { background: red; }
那就行了。但是如果你试着去做
#barbiedolls:hover #toys { background: red; }
那是行不通的。也不会
#barbiedolls:hover #cartrucks { background: red; }
从
相邻同级选择器具有以下语法:E1+E2,其中E2是选择器的主题。如果E1和E2在文档树中共享同一父级,并且E1紧跟在E2之前,忽略非元素节点(例如文本节点和注释),则选择器匹配
这意味着#firstElement
在#secondElement
之前,因此它可以工作
但是#secondElement
不在#firstElement
之前,因此它不起作用
相邻同级选择器具有以下语法:E1+E2,其中E2是选择器的主题。如果E1和E2在文档树中共享同一父级,并且E1紧跟在E2之前,忽略非元素节点(例如文本节点和注释),则选择器匹配
这意味着#firstElement
在#secondElement
之前,因此它可以工作
但是#secondElement
不在#firstElement
之前,因此它不起作用。从其他答案中应该可以清楚地看出这不起作用的原因。这里有一个解决方案
<div id="elements">
<p id="firstElement">Hover</p>
<p id="secondElement">Hello</p>
</div>
从其他答案中应该可以清楚地看出为什么这不起作用。这里有一个解决方案
<div id="elements">
<p id="firstElement">Hover</p>
<p id="secondElement">Hello</p>
</div>
您真的不需要为此使用javascript@Jasny ArnoldDaniels我没有说“需要”,我说你“可以”使用JQuery。您的解决方案需要在HTMLY中进行一些更改,您真的不需要为此使用javascript@Jasny ArnoldDaniels我没有说“需要”,我说你“可以”使用JQuery。您的解决方案需要在HTMLglad中进行一些更改,您可以使用CSS方法对HTML进行一些更改,并学到了一些东西+谢谢你!就这样!我会用这个,因为我不能用JavaScriptHigh,很高兴你用CSS的方式对HTML进行了一些修改,学到了一些东西+谢谢你!就这样!我将使用它,因为我不能使用JavaScript