[9/28] [100%] Качество кода


#1

Хочу писать код максимально качественно.
Подскажите, что можно улучшить и аргументируйте свой совет.

HTML:

<!DOCTYPE html>
<html lang="ru">
    <head>
        <meta charset="utf-8">
        <title>Испытание: вертикальное меню</title>
    </head>
    <body>
        <ul class="main-menu">
            <li><a href="">Курсы</a></li>
            <li><a href="" class="active">Демонстрации</a></li>
            <li><a href="">Участники</a></li>
            <li><a href="">Достижения</a></li>
            <li><a href="">Профиль</a></li>
        </ul>
    </body>
</html>

CSS:

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;
}

.main-menu li {
    list-style: none; 
}

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

.main-menu .active {
   background: #1abc9c; 
   border-color: #2ecc71;
}

#2

padding одной строкой можно написать, в в остальном придираться не к чему.


#3

Если одной строкой писать то будет так:

padding: 10px 10px 10px 15px;

Но я посчитал более уместным переопределить левый внутренний отступ.
Как мне кажется, первый вариант более красивый.


#4

В целом, да. Но обычно отступы у пунктов меню делают симметричными. Если представить, что справа тоже 15px, то запись будет еще красивее - padding: 10px 15px;


#5

когда вы пишите одно свойство, а потом “ой нет, я передумал” - что же тут красивого?


#6

Этот вариант я тоже рассматривал.
Для меня, этот вариант самый оптимальный, однако, если его использовать, то нужно уменьшить ширину блока ссылок:

.main-menu a {
    width: 170px;
}

Спасибо за советы, вопрос исчерпан.


#7

Не пишите ширину совсем. Слова в пунктах меню могут быть разными по длине, и может случиться неприятность, когда слово не влезет.


#8

Ширину блоку указал, чтоб подогнать решение под размер образца.
Разве без указания ширины для блоков ссылок, можно подогнать решение под образец?
В качестве решения вижу уменьшение ширины body, но опять таки ширина


#9

Не body. Пропишите ширину .main-menu.


#10

Понял. Благодарю.