Css 为什么';t:悬停会影响本例中的另一个元素吗?
我正在尝试在手机上制作一个带有菜单链接的导航栏,当你点击菜单按钮时就会出现。因此,我决定使用Css 为什么';t:悬停会影响本例中的另一个元素吗?,css,css-selectors,hover,nav,Css,Css Selectors,Hover,Nav,我正在尝试在手机上制作一个带有菜单链接的导航栏,当你点击菜单按钮时就会出现。因此,我决定使用:hoverCSS事件来显示它们 (,:hover用于使其他元素可见,并且工作正常 如果没有所有其他容器(,以及#item和#menu之外的其他元素),代码可以正常工作。但是,当我在当前结构中实现它时,它会停止工作;..hover~无法工作,而..hover仍然可以工作(因为,…是规则名称) 正文{ 字体系列:无衬线; 边际:0px; 宽度:100%; } 导航{ 背景色:黑色; 位置:固定; 宽度:1
:hover
CSS事件来显示它们
(,:hover
用于使其他元素可见,并且工作正常
如果没有所有其他容器(
,以及#item
和#menu
之外的其他元素),代码可以正常工作。但是,当我在当前结构中实现它时,它会停止工作;..hover~
无法工作,而..hover
仍然可以工作(因为,…
是规则名称)
正文{
字体系列:无衬线;
边际:0px;
宽度:100%;
}
导航{
背景色:黑色;
位置:固定;
宽度:100%;
高度:196px;
字体大小:64px;
填充顶部:0px;
z指数:5;
}
导航ul{
颜色:白色;
-webkit填充开始:32px;
宽度:计算(100%-32px);
}
李国荣{
显示:块;
浮动:左;
高度:18px;
填充顶部:8px;
}
nav ul li#头衔{
最小宽度:80%;
字体大小:粗体;
}
导航ul li#菜单{
宽度:100px;
高度:100px;
颜色:白色;
显示:块;
}
导航ul li#菜单:悬停{
颜色:红色!重要;
}
导航ulli#菜单:悬停~nav ul li#项{
颜色:红色!重要;
可见性:可见!重要;
}
nav ul li#第一项{
边缘顶部:32px;
}
nav ul li#项目{
背景色:rgba(255、255、255、0.5);
左边距:-32px;
高度:96px;
填充:16px;
颜色:黑色;
显示:块;
宽度:100%;
可见性:隐藏;
}
导航ul li#项目:悬停{
背景色:rgba(255,0,0,0.5);
文字装饰:下划线;
}
a{
颜色:黑色;
文字装饰:无;
宽度:100%;
}
菜单{
颜色:白色!重要;
}
a:悬停{
颜色:蓝色;
}
a:参观了{
颜色:黑色;
文字装饰:无;
}
a#菜单:已访问{
颜色:白色!重要;
}
a:主动的{
颜色:红色;
文字装饰:无;
}
艾蒂莫西的网站
您的代码有一些错误:
正文{
字体系列:无衬线;
边际:0px;
宽度:100%;
}
导航{
背景色:黑色;
位置:固定;
宽度:100%;
高度:196px;
字体大小:64px;
填充顶部:0px;
z指数:5;
}
导航ul{
颜色:白色;
-webkit填充开始:32px;
宽度:计算(100%-32px);
}
李国荣{
显示:块;
浮动:左;
高度:18px;
填充顶部:8px;
}
nav ul li#头衔{
最小宽度:80%;
字体大小:粗体;
}
导航ul li#菜单{
宽度:100px;
高度:100px;
颜色:白色;
显示:块;
}
导航ul li#菜单:悬停{
颜色:红色!重要;
}
nav ul li#menu:hover~li.item{/*以类为目标,仅在tilda之后使用li部分*/
颜色:红色!重要;
可见性:可见!重要;
}
nav ul li#第一项{
边缘顶部:32px;
}
nav ul li.item{/*目标类而不是id*/
背景色:rgba(255、255、255、0.5);
左边距:-32px;
高度:96px;
填充:16px;
颜色:黑色;
显示:块;
宽度:100%;
可见性:隐藏;
}
导航ulli.项目:悬停{
背景色:rgba(255,0,0,0.5);
文字装饰:下划线;
}
a{
颜色:黑色;
文字装饰:无;
宽度:100%;
}
菜单{
颜色:白色!重要;
}
a:悬停{
颜色:蓝色;
}
a:参观了{
颜色:黑色;
文字装饰:无;
}
a#菜单:已访问{
颜色:白色!重要;
}
a:主动的{
颜色:红色;
文字装饰:无;
}
艾蒂莫西的网站
你的html中有错误:一个- 不能包含一个作为孩子。首先解决这个问题。另外,
nav ul li#菜单:hover~nav ul li#item
应该是nav ul li#菜单:hover~li#item
,因为
放在中)更改CSS规则)没有做任何事情(除了将CSS缩小一点)。然后肯定还有其他事情。你能用你现在拥有的代码更新这个问题吗?只需注意,我可以使用显示:块;
-ed
(s)作为链接,而不仅仅是其中的文本作为链接。另外,旁注:这不起作用。@aytimothy可能是,但它是无效的html-li是ul中允许的唯一子元素。只需将其切换并正确设置样式。我收回它。它起作用。问题是代码段太小。html结构是规则,而不是建议如果你想忽略它,那没关系,但是当浏览器试图为你修复代码时,它们会以不同的方式运行。你也会因为搜索引擎优化而受到惩罚,并产生其他副作用。所以尽一切努力忽略它,但当你因为它而出现其他bug时,别忘了我告诉过你你会的。我不会为销售代表做这件事——我做这件事是为了尝试和帮助,如果你不想知道这是好的,那么让你销售代表付出代价的不是寻求帮助,而是忽略了提供的帮助。