Размещение изображения в правом верхнем углу - CSS - PullRequest
105 голосов
/ 02 сентября 2011

Мне нужно отобразить изображение в верхнем правом углу div (изображение представляет собой «диагональную» ленту), но с сохранением текущего текста, содержащегося во внутреннем div, прикрепленным вверху, как в данный момент.

Я пробовал разные вещи, такие как включение изображения в другой div или определение его класса, например:

.ribbon {
   position: relative;
   top: -16px;
   right: -706px;
}

<div id="content">
   <img src="images/ribbon.png" class="ribbon"/>
   <div>some text...</div>
</div>

, но безуспешно.Лучший результат, который я получил, был весь текст, прокрученный вниз для того же размера изображения высоты.

Есть идеи?

Ответы [ 3 ]

200 голосов
/ 02 сентября 2011

Вы можете просто сделать это так:

#content {
    position: relative;
}
#content img {
    position: absolute;
    top: 0px;
    right: 0px;
}

<div id="content">
    <img src="images/ribbon.png" class="ribbon"/>
    <div>some text...</div>
</div>
25 голосов
/ 02 сентября 2011

Расположите div относительно и поместите ленту абсолютно внутри.Что-то вроде:

#content {
  position:relative;
}

.ribbon {
  position:absolute;
  top:0;
  right:0;
}
4 голосов
/ 06 января 2013

Рассматривая ту же проблему, я нашел пример

<style type="text/css">
#topright {
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    height: 125px;
    width: 125px;
    background: url(TRbanner.gif) no-repeat;
    text-indent: -999em;
    text-decoration: none;
}
</style>

<a id="topright" href="#" title="TopRight">Top Right Link Text</a>

Хитрость в том, чтобы создать небольшой (я использовал GIMP) PNG (или GIF) с прозрачным фоном (а затем просто удалите противоположный нижний угол.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...