微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从css中的另一个元素内部控制一个元素

如何解决从css中的另一个元素内部控制一个元素

你好,我现在面临从不同元素内部控制元素的问题。 例如,如果我想通过将鼠标悬停在 header 中的另一个元素上来控制页脚内元素的外观。 我希望你能得到答案并提前致谢

解决方法

一种方法是,例如,如果您有一个带有链接的 li,并且您想在将鼠标悬停在 li 上时更改链接的颜色,您可以这样做:

ul li:hover a {
  color: green;
}

/* only for presentation */
ul li {
  width: 100px;
  height: 50px;
  box-shadow: 2px 2px 2px 1px rgba(0,0.2);
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
}
<ul>
  <li>
    <a href="#">Link</a>
  </li>
</ul>

如果你想像你所说的那样影响完全随机的元素,你可以这样做:

/* ----- This is all extra styling ----- */
body {
  background-color: #121212;
}

.header {
  position: fixed;
  background-color: rgb(31,33,34);
  width: 100%;
  color: white;
  font-family: arial;
  text-align: center;
}

.footer {
  position: absolute;
  top: 90%;
  background-color: rgb(31,34);
  width: 100%;
  color: white;
  font-family: arial;
  text-align: center;
}
/* ----- This is all extra styling ----- */

.header:hover + .footer {
  background-color: red;
}
<!DOCTYPE html>
<html>
  <head>
  <!-- Meta tags and what not -->
  </head>
  <body>
    <div class="header">
        <!--Header stuff here-->
        <h2>My Website</h2>
    </div>
    <!--In this case the footer and header must be exactly next to eachother for the + to work-->
    <div class="footer">
      <h4>Hover on the header to change my color</h4>
    </div>
    
    <!--This could be whatever you want the page content to be-->
    <main>
    </main>
 </body>
</html>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。