2013-07-29 3 views
0

У меня есть три секции со 100% шириной;Переопределение CSS разделов без абсолютного позиционирования

<section> 
    <h1>section 1</h1> 
</section> 
<section> 
    <h1>section 2</h1> 
</section> 
<section> 
    <h1>section 3</h1> 
</section> 

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

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

Я также не после решения JavaScript.

+0

Только два способа сделать это два пути, которые вы не хотите использовать. Это можно сделать с помощью одной строки jQuery - назначить класс последнему и первому разделу '$ ('. Last'). PrependTo ('. First');' – Vector

ответ

2

Нет, нет никакого способа сделать это, не изменяя свой HTML или не используя абсолютное позиционирование. Вы настроили поток документа определенным образом (помещая свой HTML определенным образом), поэтому единственный способ изменить этот поток без изменения HTML - использовать директиву, которая выводит элемент из нормальный поток документов (и только два, которые делают это: absolute и fixed).

Запрет на эти два варианта, единственное, что у вас осталось - это JavaScript, но даже тогда он будет переупорядочивать HTML на лету (сначала помещая ваш последний). Это может работать, если пользовательский агент, который вы хотите поддерживать, помещая его в том порядке, который у вас есть, не использует JavaScript.

+0

Спасибо Shauna, вот что я подозревал. Я чувствовал, что документ лучше читается в другом порядке, чем тот, который был представлен, но я думаю, что иногда вам приходится идти на компромисс –

Смежные вопросы