Добрый вечер!
Начал разбираться в анимации меню на чистом css, и столкнулся с некрасивой проблемкой. При переходе по меню анимация возвращается на начальную позицию. Так вот, как бы так сделать, чтобы не возвращалось?
Заранее огромное спасибо!
ps: хочется без js научиться такое делать :)
Вот html:
<section>
            <nav id="active">
                <ul><li class="active"><a href="/main">Главная</a></li><li><a href="/portfolio">Портфолио</a></li><li><a href="/404">404</a></li><li class="slide"></li></ul>
            </nav>
        </section>
Вот код css:
a {
    color: #33f;
    text-decoration: none;
}
a:hover {
    color: #900;
    text-decoration: none;
}
section {
    width: 95%;
    margin: 20px 0;
}
section a {
    text-decoration: none;
    color: #464646;
}
section a:hover {
    text-decoration: none;
    color: #fff;
}
section a, #active li {
    transition: all 0.5s ease-in-out;
}
section nav {
    border: 1px solid #aaa;
    margin: 0 auto;
}
section ul {
    list-style: none;
    position: relative;
    text-align: center;
}
section li {
    display: inline-block;
    width: 33.33%;
    vertical-align: middle;
}
section a {
    font-size: 16px;
    display: block;
}
section ul:hover li.active a {
    color:#464646;
}
section .active a, section ul:hover li.active a:hover {
    color: #fff;
}
.slide {
    background-color: #444;
    height: 100%;
    position: absolute;
    width: 33.33%;
    z-index: -1;
}
#active .active:nth-child(1) ~ li.slide,
#active li:hover:nth-child(1) ~ li.slide {
    left: 0;
}
#active .active:nth-child(2) ~ li.slide,
#active li:hover:nth-child(2) ~ li.slide {
    left: 33.33%;
}
#active .active:nth-child(3) ~ li.slide,
#active li:hover:nth-child(3) ~ li.slide {
    left: 66.66%;
}