Transition and hover, are set in css, but the position changes directly, not excessive, and the color does not change.

<!DOCTYPE html>
<html>
<head>
    <title>TEST</title>
    <style type="text/css">
        li{
            width:100px;
            height:30px;
            transition:all 2s linear 0s;
        }
        
        -sharpli1{
            background-color: red;
        }
        -sharpli2{
            background-color: green;
        }
        -sharpli3{
            background-color: blue;
        }
        -sharpli4{
            background-color: orange;
        }
        li:hover{
            background-color:gray;
            position:relative;
            left:10px;
        }
        
    </style>
</head>
<body>
    <ul>
        <li id="li1"></li>
        <li id="li2"></li>
        <li id="li3"></li>
        <li id="li4"></li>
    </ul>
</body>
</html>
Css
Mar.01,2021

because

li{
            width:100px;
            height:30px;
            transition:all 2s linear 0s;
            position: relative;
            left: 0;
        }
        
        -sharpli1{
            background-color: red;
        }
        -sharpli2{
            background-color: green;
        }
        -sharpli3{
            background-color: blue;
        }
        -sharpli4{
            background-color: orange;
        }
        -sharpli1:hover,
        -sharpli2:hover,
        -sharpli3:hover,
        -sharpli4:hover{
            background-color:gray;
            left:10px;
        }
Menu