[19/20] Испытание: псевдоэлементы, 100%


#1

Прошу посмотреть код, буду рада критике и советам по оптимизации. Спасибо!

html,
    body {
        margin: 0;
        padding: 0;
        font-family: "Arial", sans-serif;
        line-height: 30px;
    }

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

    .two-cards {
        width: 350px;
        height: 250px;
        padding: 10px;
        text-align: center;
    }

    .two-cards div {
        position: relative;
        display: inline-block;
        width: 120px;
        height: 180px;
        margin: 0 10px;
        margin-top: 30px;
        vertical-align: middle;
        background-color: white;
        border-radius: 5px;
        box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.8);
        background-size: 50px auto;
    }
    .ace-heart {
        background: url(/assets/course57/heart.svg) no-repeat 50% 50%;
    }
    .two-spade {
        background: url(/assets/course57/spade.svg) no-repeat 50% 50%;
    }

    /* Ширина иконок, не изменяйте */
    .two-cards div::before,
    .two-cards div::after {
        width: 20px;
        position: absolute;
        font-weight: bold;
        font-size: 25px;
        background-size: 25px auto;
        padding-bottom: 20px;
    }

    .ace-heart::before,
    .ace-heart::after {
        content: "A";
        color: red;
        background: url(/assets/course57/heart.svg) no-repeat 50% 100%;
    }

    .ace-heart::before,
    .two-spade::before{
        left: 5px;
        top: 5px;
    }
    .ace-heart::after,
    .two-spade::after{
         right: 5px;
        bottom: 5px;
    }

    .two-spade::before,
    .two-spade::after {
        content: "2";
        color: black;
        background: url(/assets/course57/spade.svg) no-repeat 50% 100%;
    }

    /* Поворот нижней иконки */
    .two-cards div::after {
        transform: rotate(180deg);
    }

(19/20) Оцените, пожалуйста, код (100%)
#2

Как бы вы могли прокомментировать код другого пользователя, (19/20) Оцените, пожалуйста, код (100%) ?


#3

Мне кажется чтобы сократить код можно было сгруппировать повторяющиеся свойства, нр, свойство position, padding-bottom вывести в
.two-cards .ace-heart::before,
.two-cards .ace-heart::after {

.two-cards .ace-heart::before,
.two-cards .ace-heart::after {
content: "A";
color: red;
font-size: 25px;
font-weight: bold;
background: url("/assets/course57/heart.svg") no-repeat 50% 100%;
background-size: 25px auto;

}

.two-cards .ace-heart::before {
position: absolute;
padding-bottom: 20px;
left: 5px;
top: 5px; 
}

.two-cards .ace-heart::after {
position: absolute;
padding-bottom: 20px;
right: 5px;
bottom: 5px;

}

#4

Вопросов и замечаний по вашему варианту у меня нет. Всё грамотно и с осознанием дела.


#5

Объясните пожалуйста какая логика у добавления свойства

padding-bottom: 20px;

Я вижу что без него картинка схлопывается (как раз искала решение этой проблемы), но я не понимаю почему так?