h1 {
    text-align: center;
    font-size: 50px;
    transform-origin: top center;
    transition: 1s;
}

h1:hover {
    transform: rotate(1080deg);
    transform: rotate3d(1080deg);
}

h2 {
    color: red;
    transform-origin: top center;
    transition: 1s;
    transition-timing-function: ease-in;
}

h2:hover {
    color: blue;
    margin-left: 200px;
}

div {
    text-align: center;
    width: 100px;
    height: 100px;
    background-color: red;
    position: relative;
    animation-name: cube;
    animation-duration: 4s;
    animation-iteration-count: infinite;
}

@keyframes cube {
    0% {background-color:red; left:0px; top:0px;}
    25%  {background-color:yellow; left:200px; top:0px;}
    50%  {background-color:blue; left:200px; top:200px;}
    75%  {background-color:green; left:0px; top:200px;}
    100% {background-color:red; left:0px; top:0px;}
}
