28 .Укажите на недостатки. Сначала сделал 100% по визуальному соответствию, потом сделал так , как меню должно выглядить

.main-menu {
margin: 0;
padding: 0;
width: 200px;
}
.main-menu li {
position: relative;
list-style: none;
background: #2980b9;
padding: 10px 5px;
border-bottom: 2px solid #2c3e50;
}
.main-menu a {
color: white;
text-decoration: none;
padding-left: 10px;
}
.main-menu>.opened:hover{
background: #1abc9c;
}
.main-menu>.opened>.sub-menu li {
background: #1abc9c;
border-bottom: 2px solid #2ecc71;
}
.main-menu .sub-menu {
display: none;
position: absolute;
width: 200px;
left: 180px;
margin: 0;
padding: 0;
top: 0;
z-index: 10;
}
.main-menu>.opened:hover .sub-menu {
display: block;
}

Правильно всё. Единственное, значение z-index здесь не оправдано. Почитайте об этом свойстве дополнительно.

2 лайка