Umieszczenie obrazu w prawym górnym rogu - CSS


125

Muszę wyświetlić obraz w prawym górnym rogu elementu DIV (obraz jest „ukośną” wstążką), ale zachowując bieżący tekst zawarty w wewnętrznym elemencie DIV, jak przyklejony do jego górnej części.

Próbowałem różnych rzeczy, takich jak włączenie obrazu do innego div lub zdefiniowanie jego klasy, na przykład:

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

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

ale bez szczęścia. Najlepszy wynik, jaki uzyskałem, to cały tekst przewijany w dół dla tej samej wysokości obrazu.

Dowolny pomysł?


Odpowiedzi:


237

Możesz to zrobić w ten sposób:

#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>

28

Ustaw divwzględnie i umieść wstążkę absolutnie w środku. Coś jak:

#content {
  position:relative;
}

.ribbon {
  position:absolute;
  top:0;
  right:0;
}

4

Patrząc na ten sam problem, znalazłem przykład

<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>

Sztuczka polega na utworzeniu małego (użyłem GIMP) pliku PNG (lub GIF) z przezroczystym tłem (a następnie po prostu usunąć przeciwległy dolny róg).

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.