2014-04-27 3 views
0

Я пытаюсь использовать window.loaction.replace() и обнаружил нежелательное поведение.window.location, проблемы с макетом страницы, css

Редирект работает отлично, но это испортит мою структуру html.

Он перенаправляет на требуемый сайт, но верхняя панель становится призраком. Насколько я могу судить, структура тела ведет себя так же, как у «отрицательного поля» размер панели. Если я удвою размер панели с помощью firebug, это спустится.

Вся страница выглядит так, что после перенаправления нет панели.

redirector: function(e){ 
    window.location.replace(e); 
    } 

Верхняя панель представляет собой элемент nav, содержащий адрес ul, из которого правая расположена справа. Он не фиксируется:

.panel{ 
    display: block; 
    height: 42px; 
    position: relative; 
    z-index: 9998; 
} 

Даже после ручной перезагрузки страницы ошибка не исчезает.

EDIT:

Такая же проблема возникает, если я переориентировать с PHP заголовок: местоположение ...

Полный HTML, тело движется вверх.

Если бы мне пришлось описать эту ошибку в CSS это будет выглядеть следующим образом:

html{ 
height:100% 
position: absolute; 
top:-40px; 
bottom:40px; 
} 
+0

Хотя были ошибки, связанные с location.replace, они связаны с историей и не влияют на макет, потому что это по существу полная перезагрузка. Скорее всего, это связано с ошибкой кодирования. У вас есть скрипка или тестовая страница, которая может воспроизвести проблему? – Sheepy

+0

Привет. Не имеет значения, использую ли я JS или перенаправление PHP. Если я свяжу ссылку, все будет нормально. Но если я отправлю форму через POST и перенаправляю, я получаю эту ошибку. Перед заголовками нет выхода. Я не мог предоставить jsfiddle, потому что похоже, что что-то не так на стороне сервера, но я понятия не имею, что. – user2429266

+0

См. Отредактированный вопрос. Html, тело сдвигается вверх по высоте верхней панели. Вне «окна просмотра». Ошибка смещения. – user2429266

ответ

0

Может быть, это полезно для кого-то еще:

Проблема возникает, если расчетная высота содержимого внутри тела, Теги html выше, чем тело, сам html.

Если HTML, тело имеет 100% высоты, так и внутри тела, например, три элемента:

верхней навигационной панели Content Wrapper Footer

и расчетная высота CSS для этих трех элементов выше чем рост тела, это приводит к этой проблеме.

Я не знаю, почему он появляется только после перенаправления, но нет, если я перемещаюсь по ссылкам.

+0

Рад, что вы находитесь на пути к решению проблемы. Вы пытались запустить результат html через валидаторы? Они полезны при обнаружении структурных проблем, которые могут сделать касеечный макет странным. – Sheepy

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