У меня следующая структура html файла
text {
p {
margin-bottom: rem(22);
&:last-child {
margin-bottom: 0;
}
}
}<div class = "text">
<div class = "one">
<p>bla</p>
<p>bla</p>
</div>
<div class = "two">
<p>bla</p>
</div>
<div class = "three">
<p>bla</p>
</div>
</div>С последним ребенком я хочу получить только самого последнего ребенка p. В этом случае <p> в div class = "three".
Но с помощью этого кода я всегда делаю margin-bottom для каждого последнего дочернего элемента в соответствующем div (один, два, три, ... и так далее).
Так есть ли решение получить только самый последний дочерний элемент (<p>) "текста" div?
Я ищу решение, которое найдет последний p и добавит нижнюю границу только к этому






В этом конкретном случае селектор должен быть
.text > div:last-child > p:last-child { ... }
или в SCSS
.text {
p {
margin-bottom: rem(22);
}
div:last-child {
p:last-child {
margin-bottom: 0;
}
}
}
}
да, верно (я написал «в этом конкретном случае»), но я не думаю, что есть решение, использующее только CSS или SCSS - я полагаю, вам понадобится Javascript для этого, чтобы проверить, какие DIV содержат элементы p.
это работает именно для этой структуры, но если, например, последний div без p, он не будет работать. Итак, я ищу решение, которое найдет последний p и добавит только к нему нижнюю границу.