отображать изображение над содержимым, используя абсолютное позиционирование

0

Мне просто интересно, как отображать изображение выше <p/> используя абсолютное позиционирование. Примечание: изображение не имеет высоты определения, оно может быть длиннее или короче. Цель состоит в том, чтобы отобразить изображение выше используемого абсолютного позиционирования.

<div id="wrap">
    <p>Hello</p>
</div>

<script>
    //Display an image above the <p/> using absolute positioning.
        //Note: the image has no define height, it could be longer or shorter. The goal is to 
         display the image above the <p/> using absolute positioning.
</script>
  • 0
    выше <p/> .... что такое <p /> ... где вы хотите снова получить изображение .... после <p> или после </p> ???

3 ответа

1

Если вы хотите <img> выше <p>, есть ли причина, по которой вы не можете сделать следующее?

<div id="wrap">
    <img src="path/to/img">
    <p>Hello</p>
</div>

Я бы очень рекомендовал этот подход, так как высота или ширина изображения ничего не сломают, а <p> будет двигаться в соответствии с его размером.

Но допустим, что <img> находится в другом месте, например, ниже:

<div id="wrap">
    <p>Hello</p>
    <img src="path/to/img">
</div>

Вы можете добавить следующий CSS:

img {
    position: relative:
    top: -25px;
}

Это не очень хорошая вещь, хотя, поскольку это буквально просто перемещает изображение до 25 пикселей. Что делать, если изменяется размер абзаца <p>? Что делать, если вы добавляете больше контента над абзацем <p>?

Вы также можете попробовать:

img {
    position: fixed;
    top: 0;
}

Это приведет к тому, что изображение будет отображаться в верхней части окна просмотра. Опять же, использование любого из этих методов position представляет множество проблем (если только это не то, что вы хотите), и я рекомендую свое первое предложение, используя чистый HTML, и избегая исправлений положения CSS.

0

Я не вижу разумного способа сделать это... почему бы не $ ("# wrap"). Before ("image"); без абсолютного положения?

  • 0
    В том-то и дело, мне нужно, чтобы он был в абсолютном положении
  • 0
    и почему ??? все остальные элементы больше не взаимодействуют с абсолютным элементом.
0

Если вы имеете в виду скрытие, вы идете:

наценка

<div class="wrapper">
  <p>I will be hidden soon.</p>
</div>

CSS

.wrapper img{
  position:absolute;
  top: 0;
}

JS

$('.wrapper').append($('<img>', { src : 'http://placehold.it/350x150'}));

Смотрите скрипку

Ещё вопросы

Сообщество Overcoder
Наверх
Меню