Это сработало для меня:
HTML:
<div id="backtophotos">
<a href="print.html"><img src="images/backprint.png" border="0"></a>
<p class="title">invitations</p>
</div>
CSS:
/*Drop the width property and set div to position:relative */
#backtophotos {
height: 20px; /* removed width */
background-repeat: no-repeat;
margin: 0 0 0 100px;
position: relative; /* set positon to relative */
}
/* Set title p to position absolute and remove margins: */
.title {
position: absolute;
right: 0;
top: 0;
margin: 0;
}
Вышеописанное работает, потому что ширина div уже "установлена"external div, поэтому вам нужно беспокоиться только о том, где находится верхний правый угол, если вы измените макет.В противном случае, выровненный по правому краю свободный заголовок.
Кроме того, единственная причина, по которой я явно установил свои поля на 0 для .title
, заключается в том, что у элементов p
установлены верхние и нижние поля (и я думаювысота линии).Если вы изменили p
на div
(ваш выбор, а p
имеет какое-то значение более явно предназначенного для текста), тогда ваше правило .title
будет просто:
.title {
position: absolute;
right: 0;
top: 0;
}
, это именно то, что вы ищете, без каких-либо дополнительных хитростей или настроек (так называется мой хэллоуинский рэп-альбом).
Лично я бы предпочел что-то более похожее на:
<div id="backtophotos">
<h2><a href="print.html">back to print</a><h2>
<h2 class="title">invitations</h2>
</div>
И справьтесь с очисткой всех браузеров css по умолчанию, поскольку вышеприведенное будет наиболее семантическим.Я бы также посоветовал не использовать изображение для текста «назад для печати» и изучить один из множества методов CIR
, поскольку программа чтения с экрана не сможет прочитать изображение вслух.