Вот мой рабочий пример:
http://jsfiddle.net/UGhKe/2/Автоматически наследует высоту div для верхнего атрибута другого div?
CSS
#body {
height: 200px;
background: black;
width: 100%;
}
.header {
position: fixed;
top: 0;
background: #369;
z-index: 1;
width: 100%;
height: 5em;
}
.content {
position: absolute;
top: 5em;
overflow: hidden;
height: 1000px;
background: #936;
z-index: 0;
width: 100%;
}
.footer {
position: fixed;
bottom: 0;
background: #396;
width: 100%;
}
.large {
font-size: 120%;
padding: 2em;
}
HTML
<div id="body">
<div class="header">
<div class="large">Header</div>
</div>
<div class="content">
Content, you should be able to see this when you scroll to top.
</div>
<div class="footer">
<div class="large">Footer</div>
</div>
</div>
Я хочу, чтобы содержание позиционироваться ниже заголовка при прокрутке сверху (но скрытый, когда вы прокрутите вниз, под заголовком) - это отлично работает ...
H owever Мне нужно удалить вверху: 5em и использовать что-то вроде «наследовать текущую высоту заголовка» - возможно ли это без JS?
Если это невозможно без JS, то я могу просто использовать JS, но я бы лучше попытался найти решение в чистом CSS.
EDIT:
Я хотел бы отметить, что по этой причине я не могу использовать верха: 5em происходит потому, что заголовок не будет иметь фиксированную высоту - изображение (для логотипа) будет использоваться внутри из текст, и это будет установлено на максимальную ширину: 100%, чтобы он сжимался до правой ширины для iPhone и не слишком сильно расширялся, скажем, iPad.
Я обновил мой вопрос, когда вы пишете свой ответ, как я забыл упомянуть, что заголовок не имеет фиксированную высоту. Это будет высота изображения с максимальной шириной: 100%; - Полагаю, я должен был использовать изображение вместо того, чтобы проиллюстрировать, что я имею в виду (поскольку высота изображения увеличивалась бы/сокращалась в зависимости от ширины браузера). – dan2k3k4
Хм, я не думаю, что это возможно без JS. Взгляните на это: http://stackoverflow.com/questions/6794000/css-fixed-position-but-relative-to-container. –