@suhuxa1

Как убрать паддинг только у того абзаца, внутри которого есть изображение?

Сабж. Есть такой код:
<p>Текст</p>
<p>fdsfsdf</p>
<p><img src="" ></p>
<p>fdsf</p>


Всем параграфам стоит паддинг 20. Но тому абзацу, внутри которого есть изображение - паддинг задавать не нужно. Как это выразить на чистом css?
Спасибо!
  • Вопрос задан
  • 183 просмотра
Пригласить эксперта
Ответы на вопрос 5
dom1n1k
@dom1n1k
Класс нужно задавать таким параграфам. Это единственно правильное решение. Всё стальное либо не сработает, либо будет оверкил.
Ответ написан
Комментировать
Astrohas
@Astrohas
Python/Django Developer
var ps = document.querySelectorAll("p");
for (var p of ps){

  console.log(p)
  image = p.querySelector("img");
  if (image){
      p.style = "padding: 0"
  }
}
Ответ написан
alsolovyev
@alsolovyev
https://developer.mozilla.org/en-US/docs/Web/CSS/:has

Задайте всем padding, а картинки на этот паддинг сдвиньте назад транформом или чем угодно...
Ответ написан
а что мешает задать какой-нибудь класс параграфу, в котором лежит картинка и написать например так:
p:not(.not-pad) {padding: 20px;}
Пример
Ответ написан
Комментировать
@maxsnw
так задай класс параграфам с картинками и отруби
p.image-inside {
padding: 0;
}

либо засунь текст внутри параграфов в спаны, дай им инлайн-блок, и задай марджины, а у имейджа не задавай.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы