Испытание: многоуровневое меню [15/28]

Код в сообщении выше проще. Изучите.

100% но что то мне кажется много кода

html,
body {
margin: 0;
padding: 0;
}

body {
width: 280px;
min-height: 280px;
padding: 10px;
font-family: “Arial”, sans-serif;
font-size: 14px;
line-height: 1.4;
background: #ecf0f1;
}
.main-menu {
padding: 0;
margin: 0;
list-style: none;
width: 200px;

}
.main-menu > li > a{
display: block;
background-color: #2980b9;
padding: 10px 15px;
color: #ffffff;
text-decoration: none;
border-bottom: 2px solid #2c3e50;
}
.main-menu > .active > a {
background-color: #1abc9c;
}
.main-menu ul {
padding: 0;
padding-top: 15px;
margin: 0;
list-style: none;
background-color: #ffffff;
}
.main-menu li li a {
display: block;
color: #2980b9;
}
.main-menu li li {
padding-left: 15px;
padding-bottom: 10px;
}
.main-menu li li:last-child {
padding-bottom: 15px;
border-bottom: 2px solid #2c3e50;
}

Конечные размеры в подменю тоже лучше ссылкам писать, а не для li.

Помогите разобраться, что не так ?

html,
body {
margin: 0;
padding: 0;
}

body {
width: 280px;
min-height: 280px;
padding: 10px;
font-family: “Arial”, sans-serif;
font-size: 14px;
line-height: 1.4;
background: #ecf0f1;
}
.main-menu{
margin: 0px;
padding: 0px;
list-style: none;
width: 200px;
height: 280px;
}
.main-menu > li{
border-bottom: 2px solid #2c3e50;
background-color: #2980b9;
padding: 10px 0px;
margin: 0px;
}
.main-menu > li > a{
text-decoration: none;
color: #ffffff;
padding: 15px;
}
.active ul{
bottom: auto;
background-color: #ffffff;
border-top: 2px solid #2c3e50;
list-style: none;
padding: 10px;
margin: 0px;
}
.active li{
margin: 0px;
padding: 5px;
}
.active li a{
color: #2980b9;
padding: 5px;
}
.main-menu > .active{
background-color: #1abc9c;
}

> Цитата

В этой теме есть ответы на все вопросы по этому заданию. Почитайте, пожалуйста.

Долго и мучительно не могу понять этой темы, вижу, что почти для всех она легка, поэтому если у кого-то будет время объяснить, то буду очень признательна за разъяснения словами, а не кодом.

1.Main-menu li выбирает все элементы Списка, верно?
Тогда что выбирает main-menu a? Да, понимаю, что ссылки. Но у нас все li это ссылки.

2.main menu>li выбирает первый уровень li ,верно? Но Main menu ul то же самое

  1. Main menu active a это когда нажата кнопка из меню или когда страница, на которую ведёт эта ссылка в меню, открыта? Но тогда и все меню пропадает, мы же уже ушли из меню на определённую страницу.

  2. Main menu >active>a это вообще непонятно . тупик(((

html,
body {
margin: 0;
padding: 0;
}

body {
width: 280px;
min-height: 280px;
padding: 10px;
font-family: “Arial”, sans-serif;
font-size: 14px;
line-height: 1.4;
background: #ecf0f1;
}

.main-menu {
width: 200px;
padding: 0;
margin: 0;
list-style: none;
}

.main-menu> .active> a {
background: #1abc9c;
}

.main-menu li a {
display: block;
padding: 10px 15px;
color: white;
background: #2980b9;
text-decoration: none;
border-bottom: 2px solid #2c3e50;
}

.main-menu .active ul {
padding: 0;
margin: 0;
list-style: none;
border-bottom: 2px solid #2c3e50;
}

.main-menu ul li:first-child a {
padding-top: 15px;
}

.main-menu ul li:last-child a {
padding-bottom: 15px;
}

.main-menu ul a {
display: block;
padding: 5px 15px;
color: #2980b9;
background: white;
border-bottom: none;
text-decoration: underline;
}

.main-menu .active {
background: #1abc9c;
}

зашло на 100%

Оцените пожалуйста, и скажите можно ли где-то сократить, я не нахожу. Спасибо

html,
body {
margin: 0;
padding: 0;
}

body {
width: 280px;
min-height: 280px;
padding: 10px;
font-family: “Arial”, sans-serif;
font-size: 14px;
line-height: 1.4;
background: #ecf0f1;
}

.main-menu {
padding: 0;
margin: 0;
width: 200px;
list-style: none;
}

.main-menu > li {
border-bottom: 2px solid #2c3e50;
}

.main-menu a {
display: block;
text-decoration: none;
background: #2980b9;
padding: 10px 15px;
color: #ffffff;
}

.main-menu > .active > a {
background: #1abc9c;
border-bottom: 2px solid #2c3e50;
}

.main-menu .active ul {
margin: 0;
padding: 10px 0 10px 15px;
list-style: none;
background: #ffffff;
}

.main-menu li li a {
padding: 5px 0;
color: #2980b9;
text-decoration: underline;
background: none;
}

1 лайк

Привет! Оцените, пожалуйста, код. Труднее всего было добраться до подменю. Может есть более оптимальный вариант?
html,
body {
margin: 0;
padding: 0;
}

body {
width: 280px;
min-height: 280px;
padding: 10px;
font-family: “Arial”, sans-serif;
font-size: 14px;
line-height: 1.4;
background: #ecf0f1;
}

.main-menu {
list-style: none;
background-color: #2980b9;
width: 200px;
padding: 0;
margin: 0;
}
.main-menu>li {
border-bottom: 2px solid #2c3e50;
}
.main-menu>li>a {
color: #ffffff;
}
.main-menu>.active>a {
background-color: #1abc9c;
border-bottom: 2px solid #2c3e50;
color: #ffffff;

}
.main-menu a {
display: block;
text-decoration: none;
padding: 10px 15px;
}

.main-menu ul {
background-color: #ffffff;
list-style: none;
padding: 0;
padding-top: 10px;
padding-bottom: 10px;
}

.main-menu ul li a {
padding: 5px 15px;
text-decoration: underline;
color: #2980b9;
}