При использовании CSS можно получить неожиданный результат при кодировании изображения или рамки для перемещения при наведении курсора. Если мышь находится в положении, которое находится в области щелчка в начале перехода, но не в конце, эффект перехода будет повторяться бесконечно и заикаться, если нет задержки. Ниже приведена краткая демонстрация html / css проблемы:
div {
height: 200px;
width: 200px;
background-color: red;
}
div:hover {
margin-left: 100px;
}
<!doctype html> <html>
<head> <title> Hover / Transition Demo </title>
<link rel="stylesheet" type="text/css" href="stylesheet.css"></head>
<body>
<div> </div>
</body>
</html>
Чтобы воспроизвести проблему, наведите указатель мыши на левую сторону красной рамки, это должно привести к быстрому перемещению квадрата влево и вправо.
Есть ли чистый способ обойти это бельмо на глазу? Возможны несколько решений: коробка остается в исходном положении; или конечная позиция; есть задержка, которая применяется только в этой ситуации, чтобы избежать эффекта заикания; или мышь требуется переместить по крайней мере на один пиксель, прежде чем переход повторяется. В идеале я хотел бы, чтобы все эти решения, но одно было бы здорово! Заранее спасибо.