CSS: наведите курсор на 3 сложенных изображения - PullRequest
0 голосов
/ 01 июля 2011

Я пытаюсь создать фотогалерею со сложенными фотографиями для каждого альбома.При наведении курсора на альбом я хочу, чтобы 1 изображение поворачивалось на 20 влево, а одно - на 20 вправо, чтобы я видел биты из 3 изображений одновременно.

Мне кажется, проблема в том, что сигналы наведения застряли на самом верхнем изображении в стопках.Я опубликую то, что я попробовал ниже.Есть идеи?Возможно ли это?

<!DOCTYPE html>
<head>
<title>Just-CSS: Rotate stacked images on hover</title>
<style>
body {
    background-color: black;
    color: white;
    padding: 20px;
    }
ul {
    margin: 0;
    padding: 0;
    }
ul li {
    list-style: none;
    position: absolute;
    }

img { -webkit-transition: all 0.2s; }
img:hover.green {-webkit-transform: rotate(-20deg);}
img:hover.blue {-webkit-transform: rotate(20deg);}

img { border: 4px solid white; }
img.red { background-color: red; }
img.green { background-color: green; }
img.blue { background-color: blue; }
</style>
</head>
<body>
<ul class="img-stack">
    <li><img class="red" width="100" height="100" src=""></li>
    <li><img class="green" width="100" height="100" src=""></li>
    <li><img class="blue" width="100" height="100" src=""></li>
</ul>
</body>
</html>

Я знаю, что вы можете сделать это с помощью JavaScript, но я просто играю с CSS, поэтому, пожалуйста, не JavaScript:)

Ответы [ 3 ]

4 голосов
/ 01 июля 2011

Просто измените это:

img:hover.green {-webkit-transform: rotate(-20deg);}
img:hover.blue {-webkit-transform: rotate(20deg);}

к этому:

ul:hover img.green {-webkit-transform: rotate(-20deg);}
ul:hover img.blue {-webkit-transform: rotate(20deg);}

Поскольку вы можете активировать только один :hover селектор за один раз (насколько я знаю), просто переведите указатель мыши на родительский элемент.

1 голос
/ 01 июля 2011

Полагаю, вы должны использовать ваш ul.img-стек в качестве оболочки для этого. Инициируйте событие: hover на сам альбом, а не на каждое изображение.

ul.img-stack:hover .green {-webkit-transform: rotate(-20deg);}
ul.img-stack:hover .blue {-webkit-transform: rotate(20deg);}
0 голосов
/ 01 июля 2011
img:hover.green {-webkit-transform: rotate(-20deg);}

до

img.green:hover {-webkit-transform: rotate(-20deg);}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...