css通过hover状态改变另一个标签的属性

公西国发
2023-12-01

css通过hover状态改变另一个标签的属性

1当元素关系为祖先和子孙时 中间直接隔空格选择后代
2当关系为兄弟关系时,用“+”(相邻兄弟)或者”~“(后面所有同级元素)
css的选择符只能是从父到子,从上到下的顺序。无法根据子元素的状态来改变祖先元素。

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>background-size</title>
    <style type="text/css">
        a{text-decoration:none;}
        ul{list-style:none;}
        div{
            background-image:url("http://climg.mukewang.com/582c37e50001b08102000065.jpg");
            width:100px;height:100px;
            display:none;border:2px solid red;
            background-repeat:no-repeat;
        }          
        /*补充代码*/ 
       
        /*祖先和子孙关系*/ 
        .length:hover div{
            background-size:100px 100px;
            display:block;
        }
        /*相邻兄弟关系*/ 
        .percent h3:hover+div{
            background-size:50% 50%;
            display:block;
        }
        .cover:hover div{
            background-size:cover;
            display:block;
        }
        .contain:hover div{
            background-size:contain;
            display:block;
        }
    </style>
</head>
<body>
    <h2>background-size不同属性值不同效果</h2>
    <ul>
        <li  class="length">
            <h3><a href="">100px 100px</a></h3>
            <div></div>
        </li> 
        <li  class="percent">
            <h3><a href="">50% 50%</a></h3>
            <div></div>
        </li> 
        <li  class="cover">
            <h3><a href="">cover</a></h3>
            <div></div>
        </li> 
        <li  class="contain">
            <h3><a href="">contain</a></h3>
            <div></div>
        </li> 
    </ul>
</body>
</html>


 类似资料: