我正在寻找一种解决悬停问题的方法。
<div class="section">
<div class="image"><img src="myImage.jpg" /></div>
<div class="layer">Lorem Ipsum</div>
</div>
现在,图像和图层这两个类都有边框。两者的正常和悬停都有不同的颜色。有办法做到这一点,因此,如果我将图层类悬停,则图层和图像类的悬停边框颜色都处于活动状态?反之亦然?
Answers:
您不需要JavaScript。
一些CSS可以做到。这是一个例子:
<html>
  <style type="text/css">
    .section { background:#ccc; }
    .layer { background:#ddd; }
    .section:hover img { border:2px solid #333; }
    .section:hover .layer { border:2px solid #F90; }
  </style>
</head>
<body>
  <div class="section">
    <img src="myImage.jpg" />
    <div class="layer">Lorem Ipsum</div>
  </div>
</body>
</html>这在Firefox和Chrome和IE8中对我有用...
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
<html>
    <head>
        <style type="text/css">
        div.section:hover div.image, div.section:hover div.layer {
            border: solid 1px red;
        }
        </style>
    </head>
    <body>
        <div class="section">
            <div class="image"><img src="myImage.jpg" /></div>
            <div class="layer">Lorem Ipsum</div>
        </div>
    </body>
</html>
...您可能也想使用IE6进行测试(我不确定它是否可以在其中运行)。
我认为最好的选择是将两个div都用另一个div括起来。然后,您可以通过CSS通过以下方式进行制作:
<html>
<head>
<style>
  div.both:hover .image { border: 1px solid blue }
  div.both:hover .layer { border: 1px solid blue }
</style>
</head>
<body>
<div class="section">
<div class="both">
  <div class="image"><img src="myImage.jpg" /></div>
  <div class="layer">Lorem Ipsum</div>
</div>
</div>
</body>
</html>
这并不难实现,但是您需要使用javascriptonmouseover函数。伪脚本:
<div class =“ section”>
<div class =“ image”> <img src =“ myImage.jpg” onmouseover =“。layer {边界:1像素纯黑;} .image {边界:1像素纯黑;}” /> </ div>
<div class =“ layer”> Lorem Ipsum </ div>
</ div>
使用您自己的颜色。您还可以在mouseover命令中引用javascript函数。
我想,您需要使用JavaScript才能完成此任务。
jQuery的:
$(function(){
   $("#innerContainer").hover(
        function(){
            $("#innerContainer").css('border-color','#FFF');
            $("#outerContainer").css('border-color','#FFF');
        },
        function(){
            $("#innerContainer").css('border-color','#000');
            $("#outerContainer").css('border-color','#000');
        }
    );
});
相应地调整值和元素ID :)