html - CSS ~ 选择器 vs + 选择器
问题描述
div + p {}
选择<p>
紧跟在元素之后的所有<div>
元素p ~ div
选择<div>
前面有一个<p>
元素的每个元素
那么有什么区别呢?
我试图在悬停<div id="bar">
时出现<div id="foo">
,并且在我的 CSS 中,两者#foo:hover ~ #bar
似乎#foo:hover + #bar
都在做同样的事情。
#foo,
#bar {
height: 200px;
width: 200px;
}
#foo {
background-color: indianred;
cursor: pointer;
}
#bar {
visibility: hidden;
background-color: steelblue;
}
/* Example 1 */
#foo:hover ~ #bar {
visibility: visible;
}
/* Example 2 */
#foo:hover + #bar {
visibility: visible;
}
/* Both example 1 & 2 do the same thing */
<div id="foo">
</div>
<div id="bar">
</div>
解决方案
一个简单的差异演示
第一的+
只选择p
紧随其后的div
div+p {
color: Red;
}
<div>
SOME DIV
</div>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Labore unde ipsam iusto veniam, neque natus perferendis pariatur, ipsa doloremque odit atque sunt vitae. Tempore iste nesciunt sint assumenda accusamus dolorem.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Beatae sint, ullam reiciendis officia placeat tenetur enim harum eos adipisci natus quis totam corrupti nostrum at sunt ipsam labore dolor voluptate.</p>
并~
选择. _ p
_div
div~p {
color: red;
}
<div>
SOME DIV
</div>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Labore unde ipsam iusto veniam, neque natus perferendis pariatur, ipsa doloremque odit atque sunt vitae. Tempore iste nesciunt sint assumenda accusamus dolorem.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Beatae sint, ullam reiciendis officia placeat tenetur enim harum eos adipisci natus quis totam corrupti nostrum at sunt ipsam labore dolor voluptate.</p>
推荐阅读
- brightscript - 我们应该如何在 Brightscript 中使用 ScanWiFi() 来显示可用的 wifi 网络数组?
- php - MySQL 正则表达式 LIKE
- java - Java:如何创建和写入文件到 Maven 目标目录
- c# - ArgumentNullException:值不能为空。参数名称:实体
- android - 如何使用 Dagger2 和 Java 在自定义 ViewModel 类中注入存储库对象?
- php - Google Search Console 中的“itemtype”字段中的值无效
- javascript - 如何在JS中获得不同顺序的所有组合?
- python-3.x - 为什么即使我将所有文章标题都附加到列表并将列表转换为 DF,我的数据框还是空的?
- javascript - Jquery淡出->滚动->淡入行为
- java - android应用程序在后台时如何从firebase-message获取数据