Испытание: первая раскладка. Сделала, но сама не поняла как)

Решить то решила:

html,
body {
margin: 0;
padding: 0;
font-family: “Arial”, sans-serif;
}

body {
min-width: 550px;
min-height: 250px;
padding: 10px;
}

.cards {
width: 500px;
}

.cards li::before {
font-family: “Courier”, monospace;
}

.cards li:not(:first-of-type):not(:nth-of-type(4)) {
margin-left: -15px;
}

ul li:not(:nth-of-type(4)) {
width: 36px;
height: 54px;
}

ul li:nth-of-type(4) {
margin-right: 30px;
margin-left: 15px;
}

ul:not(:nth-of-type(2)) li:nth-of-type(2) {
background-color: #ff3300;
}

ul:last-of-type li:nth-of-type(3n) {
background-color: #339933;
}

ul:not(:last-of-type) li.diamond:not(.nine) {
background-color: #0099ff;
}

Но намучилась - вся картинка была слегка сдвинута. Таки вырацапала решение:

.cards li:not(:first-of-type):not(:nth-of-type(4)) {
margin-left: -15px;
}

Но сама не понимаю как оно работает. Пожалуйста, объясните крабику? :space_invader::space_invader:

Спасибо всем, кто просмотрел и не стал отвечать.
Пока я сонная утром наблюдала за попытками моей собаки найти подходящее для ее дел “место силы”, на меня снизошло озарение и я сама поняла как работает этот кусочек CSS-кода. Логично же, что раз при простом .cards li {margin-left: -15px;} вся картинка слишком сильно сдвигается влево, то нужно создать “упоры”. Самым естественным упором №1 будет первая карта, чтоб картинка не уходила левее, чем надо. И вот до этой светлой мысли я дотюхала своим мозгом канарейки еще вчера, но выглядело это не слишком красиво. А все почему? А все потому, что Вика-крабстер забыла про разрыв в картинке в районе 4-ой карты каждой строки. И вот она-то и должна стать упором №2.
Боже как все просто когда включаешь голову (на лицо так же польза сна и свежего воздуха). /еще здорово помогает нарисавать все происходящее и желаемое на листке бумаги. Бумага вообще помогает привести мысли в порядок/
Всем спасибо! Путь краба продолжается :space_invader:

5 лайков