Можно ли поместить элемент в верхнюю часть его абзаца? - PullRequest
1 голос
/ 26 октября 2019

Я пытаюсь найти способ переместить изображение в top абзаца, за которым оно идет. Он должен прийти после текста абзаца в HTML, чтобы программы чтения с экрана и небольшие экраны (с изображением, не всплывающим из-за медиазапросов) увидели изображение после текста абзаца. Я могу поставить <img> внутри или снаружи <p>, но это должно быть после текста.

Есть ли способ заставить изображение появиться в правом верхнем углу текста абзаца, иправильно обернуть текст абзаца вокруг изображения, используя только CSS?

[...document.querySelectorAll('img')].forEach(img => {
  const rand = Math.floor(Math.random() * 300 + 100);
  img.setAttribute('src', `https://placekitten.com/150/${rand}/`);
  img.setAttribute('height', rand);
});
img {
  float: right;
  width: 150px;
  height: auto;
}
body {
  display: flex;
}
<div class="inside">
  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec posuere odio in tincidunt posuere. Phasellus id lectus erat. Proin sollicitudin tortor risus, vel tincidunt est accumsan id. Donec urna erat, interdum in elit sit amet, egestas ullamcorper tortor. Nam a leo nec lectus varius tristique. Cras et erat ac lectus auctor interdum. Ut eros tellus, interdum a rutrum vitae, rutrum ac ex. Curabitur aliquet purus libero, in porttitor dui egestas non. Pellentesque ex dui, commodo vitae lectus non, aliquam pretium mauris. Etiam viverra imperdiet sem et vestibulum. Aenean eu sapien eget diam tincidunt sagittis vitae ac turpis. Praesent nec libero condimentum, imperdiet lorem et, semper lectus. Curabitur ac erat eu neque volutpat aliquam sit amet ut nisi. Sed vestibulum augue arcu, at luctus urna dignissim at. Vestibulum pretium consequat erat vel placerat. Phasellus id lectus erat. Proin sollicitudin tortor risus, vel tincidunt est accumsan id. Donec urna erat, interdum in elit sit amet, egestas ullamcorper tortor. Nam a leo nec lectus varius tristique. Cras et erat ac lectus auctor interdum. Ut eros tellus, interdum a rutrum vitae, rutrum ac ex. Curabitur aliquet purus libero, in porttitor dui egestas non. Pellentesque ex dui, commodo vitae lectus non, aliquam pretium mauris. Etiam viverra imperdiet sem et vestibulum. Aenean eu sapien eget diam tincidunt sagittis vitae ac turpis. Praesent nec libero condimentum, imperdiet lorem et, semper lectus. Curabitur ac erat eu neque volutpat aliquam sit amet ut nisi. Sed vestibulum augue arcu, at luctus urna dignissim at. Vestibulum pretium consequat erat vel placerat. Phasellus id lectus erat. Proin sollicitudin tortor risus, vel tincidunt est accumsan id. Donec urna erat, interdum in elit sit amet, egestas ullamcorper tortor. Nam a leo nec lectus varius tristique. Cras et erat ac lectus auctor interdum. Ut eros tellus, interdum a rutrum vitae, rutrum ac ex. Curabitur aliquet purus libero, in porttitor dui egestas non. Pellentesque ex dui, commodo vitae lectus non, aliquam pretium mauris. Etiam viverra imperdiet sem et vestibulum. Aenean eu sapien eget diam tincidunt sagittis vitae ac turpis. Praesent nec libero condimentum, imperdiet lorem et, semper lectus. Curabitur ac erat eu neque volutpat aliquam sit amet ut nisi. Sed vestibulum augue arcu, at luctus urna dignissim at. Vestibulum pretium consequat erat vel placerat.
    <img src="https://placekitten.com/150/200" width="150" height="200" alt="Cat">
  </p>
</div>

<div class="outside">
  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec posuere odio in tincidunt posuere. Phasellus id lectus erat. Proin sollicitudin tortor risus, vel tincidunt est accumsan id. Donec urna erat, interdum in elit sit amet, egestas ullamcorper tortor. Nam a leo nec lectus varius tristique. Cras et erat ac lectus auctor interdum. Ut eros tellus, interdum a rutrum vitae, rutrum ac ex. Curabitur aliquet purus libero, in porttitor dui egestas non. Pellentesque ex dui, commodo vitae lectus non, aliquam pretium mauris. Etiam viverra imperdiet sem et vestibulum. Aenean eu sapien eget diam tincidunt sagittis vitae ac turpis. Praesent nec libero condimentum, imperdiet lorem et, semper lectus. Curabitur ac erat eu neque volutpat aliquam sit amet ut nisi. Sed vestibulum augue arcu, at luctus urna dignissim at. Vestibulum pretium consequat erat vel placerat. Phasellus id lectus erat. Proin sollicitudin tortor risus, vel tincidunt est accumsan id. Donec urna erat, interdum in elit sit amet, egestas ullamcorper tortor. Nam a leo nec lectus varius tristique. Cras et erat ac lectus auctor interdum. Ut eros tellus, interdum a rutrum vitae, rutrum ac ex. Curabitur aliquet purus libero, in porttitor dui egestas non. Pellentesque ex dui, commodo vitae lectus non, aliquam pretium mauris. Etiam viverra imperdiet sem et vestibulum. Aenean eu sapien eget diam tincidunt sagittis vitae ac turpis. Praesent nec libero condimentum, imperdiet lorem et, semper lectus. Curabitur ac erat eu neque volutpat aliquam sit amet ut nisi. Sed vestibulum augue arcu, at luctus urna dignissim at. Vestibulum pretium consequat erat vel placerat. Phasellus id lectus erat. Proin sollicitudin tortor risus, vel tincidunt est accumsan id. Donec urna erat, interdum in elit sit amet, egestas ullamcorper tortor. Nam a leo nec lectus varius tristique. Cras et erat ac lectus auctor interdum. Ut eros tellus, interdum a rutrum vitae, rutrum ac ex. Curabitur aliquet purus libero, in porttitor dui egestas non. Pellentesque ex dui, commodo vitae lectus non, aliquam pretium mauris. Etiam viverra imperdiet sem et vestibulum. Aenean eu sapien eget diam tincidunt sagittis vitae ac turpis. Praesent nec libero condimentum, imperdiet lorem et, semper lectus. Curabitur ac erat eu neque volutpat aliquam sit amet ut nisi. Sed vestibulum augue arcu, at luctus urna dignissim at. Vestibulum pretium consequat erat vel placerat.
  </p>
  <img src="https://placekitten.com/200/200" width="200" height="200" alt="Cat">
</div>

1 Ответ

0 голосов
/ 26 октября 2019

По идее стоит рассмотреть плавающий псевдоэлемент, где вы будете использовать изображение в качестве фона:

img {
  float: right;
  width: 150px;
  height: auto;
}
.outside:before {
  content:"";
  float:left;
  width:150px;
  height:150px;
  background-image:url(https://placekitten.com/150/150/);
}
body {
  display: flex;
}
<div class="outside">
  <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec posuere odio in tincidunt posuere. Phasellus id lectus erat. Proin sollicitudin tortor risus, vel tincidunt est accumsan id. Donec urna erat, interdum in elit sit amet, egestas ullamcorper tortor. Nam a leo nec lectus varius tristique. Cras et erat ac lectus auctor interdum. Ut eros tellus, interdum a rutrum vitae, rutrum ac ex. Curabitur aliquet purus libero, in porttitor dui egestas non. Pellentesque ex dui, commodo vitae lectus non, aliquam pretium mauris. Etiam viverra imperdiet sem et vestibulum. Aenean eu sapien eget diam tincidunt sagittis vitae ac turpis. Praesent nec libero condimentum, imperdiet lorem et, semper lectus. Curabitur ac erat eu neque volutpat aliquam sit amet ut nisi. Sed vestibulum augue arcu, at luctus urna dignissim at. Vestibulum pretium consequat erat vel placerat. Phasellus id lectus erat. Proin sollicitudin tortor risus, vel tincidunt est accumsan id. Donec urna erat, interdum in elit sit amet, egestas ullamcorper tortor. Nam a leo nec lectus varius tristique. Cras et erat ac lectus auctor interdum. Ut eros tellus, interdum a rutrum vitae, rutrum ac ex. Curabitur aliquet purus libero, in porttitor dui egestas non. Pellentesque ex dui, commodo vitae lectus non, aliquam pretium mauris. Etiam viverra imperdiet sem et vestibulum. Aenean eu sapien eget diam tincidunt sagittis vitae ac turpis. Praesent nec libero condimentum, imperdiet lorem et, semper lectus. Curabitur ac erat eu neque volutpat aliquam sit amet ut nisi. Sed vestibulum augue arcu, at luctus urna dignissim at. Vestibulum pretium consequat erat vel placerat. Phasellus id lectus erat. Proin sollicitudin tortor risus, vel tincidunt est accumsan id. Donec urna erat, interdum in elit sit amet, egestas ullamcorper tortor. Nam a leo nec lectus varius tristique. Cras et erat ac lectus auctor interdum. Ut eros tellus, interdum a rutrum vitae, rutrum ac ex. Curabitur aliquet purus libero, in porttitor dui egestas non. Pellentesque ex dui, commodo vitae lectus non, aliquam pretium mauris. Etiam viverra imperdiet sem et vestibulum. Aenean eu sapien eget diam tincidunt sagittis vitae ac turpis. Praesent nec libero condimentum, imperdiet lorem et, semper lectus. Curabitur ac erat eu neque volutpat aliquam sit amet ut nisi. Sed vestibulum augue arcu, at luctus urna dignissim at. Vestibulum pretium consequat erat vel placerat.
  </p>
  <img src="https://placekitten.com/150/150" width="200" height="200" alt="Cat">
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...