Испытание: первая раскладка [19/20]

Единственное, что от вас требуется — всего лишь подобрать нужные селекторы для каждого CSS-правила. Так звучит задание.
Задание выполнила но почему то происходит общее смещение всех карт не пойму в чем причина? Профи. помогите разобраться?
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;
}
ul:nth-last-child(2) li,
ul:nth-last-child(3) li,
ul:nth-last-child(4) li,
ul:nth-last-child(5) li{
margin-left: -15px;
}
li:first-of-type,
li:last-of-type,
li:nth-last-child(3),
li:nth-last-child(4),
li:nth-last-child(5),
li:nth-last-child(6),
li:nth-last-child(8),
li:nth-last-child(9){
width: 36px;
height: 54px;
}

.cards li:nth-last-of-type(6){
margin-right: 30px;
margin-left: 15px;
}

li.ace.diamond,
li.eight.diamond,
li.ten.diamond,
li.six.diamond,
li.queen.diamond{
background: #0099FF;
}

li.seven.spade,
li.seven.heart,
li.seven.diamond{
background: #FF3300;
}

li.eight.heart,
li.jack.diamond,
li.ace.spade{
background: #339933;
}

2 лайка

Вы случайно не меняли сами стили в правилах?

Попробуйте для правила с margin-left: -15px; испольховать селектор ul li:not(:first-of-type).

2 лайка

Нет стили я не меняла это и удивляет

Спасибо огромное, 100% после того как поменяла:blush:

Вот проще решение

1 лайк

100%

ul li:not(:first-of-type) {
margin-left: -15px;
}

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

ul li:nth-child(5) {
margin-right: 30px;
margin-left: 15px;
}

ul .diamond:not(.king):not(.nine):not(.seven):not(.jack) {
background-color: #0099ff;
}

ul .seven:not(.club) {
background-color: #ff3300;
}

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

Это работает!Но я так и не смог понять как…

1 лайк

Просидел не мало времени ломая голову над расхождением в размерах…
А всё дело в (:first-of-type).
Почему???
Почему я так и НЕ НАШЕЛ РЕШЕНИЕ пока не залез на форум???
Как удалить ЭТОТ пробел в знаниях?
Как Вы догадались?
На что ссылалась Ваша память когда Вы коснулись этой же проблемы?
Что я пропустил на этих курсах?
Что читать?

1 лайк

ul li:not(:nth-of-type(4)):not(:nth-of-type(1)) {
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(:last-of-type) li.diamond:not(:nth-of-type(4)) {
background-color: #0099ff;
}

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

1 лайк

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

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

.cards {
width: 500px;
}

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

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

ul li:not(:nth-child(5)) {
width: 36px;
height: 54px;
}

ul li:nth-child(5) {
margin-right: 30px;
margin-left: 15px;
}

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

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

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

ul li:not(:first-of-type){
margin-left: -15px;
}

.cards li:not(:nth-child(5)){
width: 36px;
height: 54px;
}

.cards li:nth-child(5) {
margin-right: 30px;
margin-left: 15px;
}

li.diamond:nth-child(even){
background-color: #0099ff;
}

.cards:not(:nth-child(3)) li:nth-child(3) {
background-color: #ff3300;
}

.cards:nth-child(5) li:nth-child(3n+1){
background-color: #339933;
}
У меня вышло вот так, правда с правилом с margin-left: -15px; намучилась. Но все же, мне интересно, какое решение будет считаться более правильным (ну или красивым), а то вариантов немало, хотелось бы, чтобы в испытаниях можно было тоже сверить решение, как и при обычных заданиях.

1 лайк
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;
}

li:not(:first-of-type) {
margin-left: -15px;
}
li:not(.nine) {
width: 36px;
height: 54px;
}

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

.cards li:not(.seven):not(.club):not(.spade):not(.heart):not(.king):not(.nine):not(.jack) {
background-color: #0099ff;
}

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

.cards:nth-of-type(4) li:nth-of-type(3n) {
background-color: #339933;
}

Мой вариант кода, 100% совпадение.

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

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

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

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

li.diamond:nth-child(even){
background-color: #0099ff;
}

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

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

"ul:last-of-type li:nth-of-type(3n+3) {
background-color: #339933; " тут можно без “+3”

Вот самый оптимальный и короткий вариант

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(:nth-of-type(4)):not(:first-of-type) {
margin-left: -15px;
}

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

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

.cards:not(:last-of-type) li.diamond:not(:nth-of-type(4)) {
background-color: #0099ff;
}

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

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

2 лайка

Для второго селектора можно просто исключить девятку
li:not(.nine)

100%

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

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

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

.cards:not(:nth-of-type(4)) li.diamond:not(li.nine){
background-color: #0099ff;
}
.cards:not(:nth-of-type(2)) li.seven {
background-color: #ff3300;
}
.cards:nth-of-type(4) li:nth-of-type(3n) {
background-color: #339933;
}

изменяемые только селекторы “selector”, 100% результат

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

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

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

.diamond:not(.nine):not(.jack):not(.king):not(.seven) {
background-color: #0099ff;
}

.seven:not(.club) {
background-color: #ff3300;
}

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

1 лайк

// C цветовыми селекторами замудрила, но не придумала ничего проще

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

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

.cards {
position: relative;
width: 380px;
text-align: left;
}

.cards li {
width: 37px;
height: 55px;
}

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

li:not(:first-child) {
margin-left: -20px;
}

ul::after {
content: “”;
position: absolute;
right: 0;
top: 0;
display: block;
width: 37px;
height: 55px;
border: 1px dashed #33bb33;
border-radius: 5px;
}

li:nth-of-type(1),
li:nth-of-type(5),
li:nth-of-type(9),
li:nth-of-type(13) {
background-color: #ffcc33;
}

ul:not(:first-of-type) li:nth-child(2),
ul:not(:first-of-type) li:nth-child(6),
ul:not(:first-of-type) li:nth-child(10) {
background-color: #0099ff;
}

ul:nth-of-type(even) li:nth-child(4n) {
background-color: #ff3300;
}

ul:nth-of-type(3) li:nth-of-type(n+5) ~.heart {
background-color: #339933;
}

ul:first-of-type li:nth-of-type(even) {
background-color: #996666;
}