HTML/CSS - 过渡选择器

标签 html css css-selectors css-transitions

我有这样的设置:

<div id="wrapper">
  <div id="inner_01"></div>
  <div id="inner_02"></div>
  <div id="inner_03"></div>
</div>

我想构建一个具有以下属性的转换:

  1. 将鼠标悬停在 inner_01 上时,inner_02inner_03background-color 应该会发生变化。
  2. 将鼠标悬停在 inner_02 上时,inner_01inner_03background-color 应该会发生变化。
  3. 将鼠标悬停在 inner_03 上时,inner_01inner_02background-color 应该会发生变化。

这是我目前的做法:

  • 将鼠标悬停在 inner_01 上:

    #wrapper #inner_01:hover ~ #inner_02 {
      /* Transition *
      transition: background 5s;
    
      /* Color */
      background: #ffee00;
    }
    
    /* Don't know how to effect inner_03 */
    
  • 将鼠标悬停在 inner_02 上:

    #wrapper #inner_02:hover ~ #inner_03 {
      /* Transition *
      transition: background 5s;
    
      /* Color */
      background: #ffee00;
    }
    
    /* Don't know how to effect inner_01 */
    
  • 将鼠标悬停在 inner_03 上:

    /* Don't know how to effect inner_01/inner_02 */
    

我想我缺少某种 CSS 选择器... 感谢您的帮助:)

最佳答案

您可以更改所有 inner_* div 的颜色,然后将悬停的 inner_* div 的颜色改回黑色。

#wrapper:hover{
  color:red;
}
[id^=inner]:hover{
  color:black;
}
<div id="wrapper">
  <div id="inner_01">test1</div>
  <div id="inner_02">test2</div>
  <div id="inner_03">test3</div>
</div>

关于HTML/CSS - 过渡选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37642871/

相关文章:

html - 在 HTML 元素的导航栏中编码 Logo 时出现问题

html - 有序列表能否使用 css 生成看起来像 1.1、1.2、1.3(而不仅仅是 1、2、3、...)的结果?

html - 使用 CSS 3 使列表中的元素右对齐

javascript - 如何使用全局选择器响应除一个元素之外的所有点击事件?

html - 响应式导航栏,带有下拉表和 div 之间的 Logo

jquery - 不使用图像的 DIV 上的圆 Angular

html - 字段集中的 float 图例在最新版本的 Chrome(版本 55)中无法正确显示?

css - 如何摆脱 chrome 中的输入边框?

python - 我正在尝试网络抓取,但得到的是函数而不是实际数据

css - "+"(加号)CSS 选择器是什么意思?