Консультация № 160363
13.02.2009, 11:19
0.00 руб.
0 4 2
Здравствуйте Уважаемые эксперты!

Столкнулся с проблемой. Есть страница сайта (главная), на которой, расположен скрипт (см. приложение), при заходе на страницу, или обновление оной, центральной содержимое (афиша и т.д.), на время загрузки скрипта, буквально на 10 px, сдвигается вправо и затем, возвращается на место. Как только, не пытался запозиционировать, ничего не выходит? Можно это, как-нибудь побороть?
Сам сайт: http://dimentiy.com

Приложение:
<script type="text/javascript" src="http://z300.takru.com/in.php?id=302742"></script>

Обсуждение

Неизвестный
13.02.2009, 11:26
общий
Извините за ошибки, исправил.

Здравствуйте Уважаемые эксперты!

Столкнулся с проблемой. Есть страница сайта (главная), на которой, расположен скрипт (см. приложение), при заходе на страницу, или обновление оной, центральное содержимое (афиша и т.д.), на время загрузки скрипта, буквально на 10 px, сдвигается вправо и затем, возвращается на место. Как только, не пытался "запозиционировать", ничего не выходит. Можно это, как-нибудь побороть?
Сам сайт: http://dimentiy.com
Неизвестный
13.02.2009, 12:10
общий
это ответ
Здравствуйте, Кривобок Дмитрий Владимирович!

Редко когда, до полной загрузки всех элементов, страница выглядит так, как она должна выглядеть. В данном случае (проверял через браузер ФайрФокс 3.0.6) у вас разметка табличная
|10px|Афиша|10px|Текст|10px|
Загрузка каждой ячейки идет по очереди а не все одновременно и потому сначала рисуется левій отступ в 10 пикселей, потом прорисовывается ячейка с афишей, потом отступ 10 пикселей после афиши, ячейка с текстом и только потом правый отступ 10 пикселей. И в данной ситуации пока не загрузится ячейка с основным текстом правый отступ рисоваться не будет.
Это можно попробовать исправить добавив в верх таблицы еще одну пустую строку
|10|пусто|10|пусто|10|
Эта строка выполнится раньше строки с текстом, и отступы уже будут заданы, правда это приведет к лишнему отступу по вертикали между фразой дня и информационными блоками




Приложение:
<!--Рабочая область-->
<table width="692" align="Center" border="0" cellspacing="0" cellpadding="0" style="table-layout: fixed;" summary="">
<tr bgcolor="#E8F9BF">
<td width="10"> </td>
<td width="162" align="center" valign="top">
<!--Наполнение-->
Тут Афиша
<!--Окончпние наполнения-->
</td>
<td width="10"> </td>
<td width="500" align="center">

<!--Основное содержимое-->
Тут текст
<!--Окончание основного содержимого-->

</td>
<td width="10"> </td>
</tr>
</table>
<!--Окончание рабочей области-->

Попробуйте сделать таким образом
<!--Рабочая область-->
<table width="692" align="Center" border="0" cellspacing="0" cellpadding="0" style="table-layout: fixed;" summary="">

<tr bgcolor="#E8F9BF">
<td width="10"> </td>
<td width="162" align="center" valign="top">
 
</td>
<td width="10"> </td>
<td width="500" align="center">
 
</td>
<td width="10"> </td>
</tr>

<tr bgcolor="#E8F9BF">
<td width="10"> </td>
<td width="162" align="center" valign="top">
<!--Наполнение-->
Тут Афиша
<!--Окончпние наполнения-->
</td>
<td width="10"> </td>
<td width="500" align="center">

<!--Основное содержимое-->
Тут текст
<!--Окончание основного содержимого-->

</td>
<td width="10"> </td>
</tr>
</table>
<!--Окончание рабочей области-->
Неизвестный
13.02.2009, 12:24
общий
это ответ
Здравствуйте, Кривобок Дмитрий Владимирович!
Я увидел этот скачок, сначала было такое впечатление, что какой-то из скриптов вычисляет размеры страницы, чтобы аккуратно вставить туда какое-либо содержимое. Попробовав загрузить сайт с отключенным Javascript`ом, я убедился, что ничего там не вычисляется.
Попытка "позиционировать" будет безуспешной. У Javascript`а бОльший приоритет по сравнению с CSS, поэтому то или иное значение свойства, заданное посредством CSS, будет перезаписано значением, присвоенным посредством Javascript.
Очевидно, что проблема заключается в работе какого-либо из скриптов Javascript.
Поэтому мой совет будет таким: 1) для начала надо локализовать тот скрипт, в котором находится корень проблемы. Сделать это просто - надо их все отключить. Потом последовательно включать каждый из блоков. Проблема обязательно появится снова и важно момент ее появления не проморгать.
2) Поймав блок, в котором происходит "прыжок", закомментируйте все его строки, а потом последовательно снимайте комментарии. Но тут важно не напороть - если Вы снимаете комментарий с такой строки:
function test(){
то надо будет снять комментарий и с закрывающей фигурной скобки.
Это и есть процесс отладки в действии. Если делать все правильно, подвести четкую систему под свои действия, то процесс становится даже увлекательным
Факт в том, что искать то место, где у Вас ошибка, можете именно Вы, а не, скажем, я. Я не могу последовательно подключать скрипты у Вас на сайте. А Вы можете. А поиск ошибки этой вот так, глазами, будет неэффективен - для меня источник возникновения проблемы не очевиден.
Главное - не бойтесь и не переживайте. Каждому, кто сталкивался с созданием сайтов, эти проблемы знакомы. Надо просто уметь найти этим проблемам правильное решение.
С уважением, Товарищ Бородин
Неизвестный
13.02.2009, 13:18
общий
[size=3]Извините, ради бога[/size], BahuL, неправильную оценку поставил. Вместо 5, случайно нажал 1. Отблагодарю по другому, отправлю CМС.
Форма ответа