Я пытаюсь реализовать скользящую боковую панель, которая активируется, когда пользователь наводит курсор на элемент .sb-toggle
.При наведении на него боковая панель, расположенная рядом с видом, будет скользить за 10 ems, а также сдвиг .content
div вправо.Но я не могу заставить его работать должным образом.Переходы запускаются для элементов .sb-toggle
и .content
, но боковая панель не отображается.
html,
body {
width: 100%;
height: 100%;
margin: 0;
padding: 0;
}
.navbar {
z-index: 1;
position: fixed;
top: 0%;
background-color: #333;
height: 3em;
width: 100%;
overflow: hidden;
border-bottom: 1px solid grey;
}
.sidebar {
background-color: #404040;
width: 10em;
height: 100%;
position: fixed;
margin-left: -10em;
top: 3em;
bottom: 0;
-moz-transition: margin-left 0.5s ease;
transition: margin-left 0.5s ease-in-out;
}
.sb-toggle {
background-color: #404040;
width: 1.5em;
height: 100%;
position: fixed;
top: 3em;
left: 0;
-moz-transition: margin-left 0.5s ease;
transition: margin-left 0.5s ease-in-out;
}
.content {
margin-top: 3em;
margin-left: 10em;
height: inherit;
width: inherit;
transition: margin-left 0.5s ease-in-out;
}
.sb-toggle:hover {
margin-left: 10em;
}
.sb-toggle:hover ~ .sidebar {
margin-left: 0;
}
.sb-toggle:hover ~ .content {
margin-left: 20em;
}
Редактировать: Вот HTML:
<body>
<div class="navbar"></div>
<div class="sidebar"></div>
<div class="sb-toggle"></div>
<div class="content"></div>
</body>