Мастерская: декоративные элементы / Испытание: анонс поста [18/18]


#1

Нужно профессиональное заключение! :thinking:

.post-stats .icon {
width: 15px;
height: 15px;
background-image:url("/assets/course14/post-challenge.png");
background-repeat: no-repeat;

}

.post{
position:relative;
margin-left:75px;

}

.post .post-title{
color:#2980b9;
font-size:20px;
margin-bottom:5px;
}

.post .post-date{
position:absolute;
top:0;
left:-75px;
width:55px;
height:55px;
line-height:55px;
text-align:center;
vertical-align:middle;
font-weight:bold;
font-size:15px;
background-color:#ffffff;
border-bottom: 5px solid #bdc3c7;
}

.post .post-type{
position:absolute;
top:70px;
left:-75px;
width:55px;
height:55px;
background-color:#7f8c8d;
border-bottom: 5px solid #bdc3c7;
background-image:url("/assets/course14/quotes.png");
background-repeat:no-repeat;
background-position: 50% 50%;}

.post .post-author{
margin-bottom:5px;}

.post .post-author a{
text-decoration:none;
color:#2980b9;}

.post-stats{
display:inline-block;
position:relative;
margin-left: 20px;
margin-right: 10px;
}

.post-stats a{
text-decoration:none;
color:#2980b9;}

.icon-tags{
position:absolute;
top:0px;
left:-20px;
background-position: 0 0;}

.icon-comments{
position:absolute;
top:1px;
left:-20px;
background-position: -20px;}

.post-text{
display:inline-block;
background-color:#ffffff;
padding:10px 10px 10px 15px;
font-size:12px;
width:170px;
border-bottom:5px solid #bdc3c7}


#2

Такие манёвры не есть хорошая практика. Еще я не могу понять, зачем блок с текстом сделан блочно-строчным и почему иконке комментариев понадобилась координата top в 1px.


#3

Координата top в 1px нужна для 100% совпадения. Если использовать top:0; то совпадение 99%.

Можно узнать какие маневры считаются хорошим тоном?

Насчёт display:inline-block согласен и всё поправил.


#4

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

.post-stats .icon {
width: 15px;
height: 15px;
background-image:url("/assets/course14/post-challenge.png");
background-repeat:no-repeat;

}

.post{
padding-left:75px;
position: relative;
}

.post a{
text-decoration:none;
color:#2980b9;
}

.post-date{
position:absolute;
top:0;
left:0;
width:55px;
height:55px;
background-color:#ffffff;
font-size: 15px;
font-weight:bold;
line-height:55px;
text-align:center;
vertical-align:middle;
border-bottom: 5px solid #bdc3c7;}

.post-type{
position:absolute;
top:70px;
left:0;
width:55px;
height:55px;
background-color:#7f8c8d;
background-image:url("/assets/course14/quotes.png");
background-repeat:no-repeat;
background-position: 50% 50%;
border-bottom: 5px solid #bdc3c7;}

.post-title{
font-size:20px;
color:#2980b9;
margin-bottom:5px;}

.post-author{
margin-bottom:5px;
}

.post-stats{
position:relative;
display:inline-block;
padding-left:20px;
padding-right: 10px;

}

.icon-tags{
position:absolute;
top:0;
left:0;
background-position: 0 0;
}

.icon-comments{
position:absolute;
top:0;
left:0;
background-position: -20px 0;}

.post-text{
background-color:#ffffff;
padding: 10px 10px 10px 15px;
width:170px;
border-bottom: 5px solid #bdc3c7;}


#5

Добрый день. у меня просьба как у автора.
Кому не лень посмотрите что не так.
Суть: во многих испытания набираю 100%, но не получается выполнить условие: “Все размеры, отступы, координаты, размеры шрифтов (не заданные в body) кратны 5 или 10.”. Есть ощущение, что мой код не оптимальный и в нем задействованы костыли.

Для быстрого поиска: у класса post-stats внутренний отступ справа 14px. Если поставить 15 px то не попадаю в образец.

Сам код:

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

body {
width: 280px;
min-height: 250px;
padding-top: 50px;
padding-left: 10px;
padding-right: 10px;
font-size: 12px;
font-family: “Arial”, sans-serif;
line-height: 1.2;
color: #7f8c8d;
background: #ecf0f1;
}

a {
color: #2980b9;
text-decoration: none;
}

.post {
position: relative;
padding-left: 75px;
}

.post-title {
margin-bottom: 5px;
font-size: 20px;
color: #2980b9;
}

.post-date {
position: absolute;
top: 0;
left: 0;
width: 55px;
height: 35px;
padding-top: 20px;
border-bottom: 5px solid #bdc3c7;
background-color: #ffffff;
text-align: center;
line-height: 15px;
font-size: 15px;
font-weight: bold;
}

.post-type {
position: absolute;
top: 70px;
left: 0;
width: 55px;
height: 55px;
border-bottom: 5px solid #bdc3c7;
background: url("/assets/course14/quotes.png") no-repeat 50% #7f8c8d;
}

.post-author {
margin-bottom: 5px;
}

.post-stats {
display: inline-block;
float: left;
position: relative;
padding-left: 20px;
padding-right: 14px;
}

.post-stats .icon {
position: absolute;
top: 0;
left: 0;
width: 15px;
height: 15px;
}

.icon-tags {
background: url("/assets/course14/post-challenge.png") no-repeat;
}

.icon-comments {
background: url("/assets/course14/post-challenge.png") no-repeat -20px 0;
}

.post-text {
clear:both;
padding: 10px 15px;
border-bottom: 5px solid #bdc3c7;
width: 165px;
background-color: #ffffff;
}


[18/18] Испытание: анонс поста - 100% и пошаговое решение
#6

Все зависит от padding’ов и marign’ов. Если задание пройдено на 100% , но вы не использовали отступы кратные 5 или 10, то где-то в коде вы “подогнали” размеры и система проверки просто сверила позиционирование и пропустила ваш макет. По моим наблюдениям системе наплевать какие значения были использованы.

Вот так должно быть

.post-stats {
display: inline-block;
position: relative;
padding-left: 20px;
padding-right: 10px;
}

В этой части использовать float: left; не нужно.


#7

Ооо спасиь. я так и думал что лишнее что-то влепил.