2012-10-15 4 views
1

Я корректирую веб-сайт одной страницы с частями, которые видны независимо. Например, когда я нажимаю кнопку «services», она переходит к той части страницы, не показывая другой контент.Дисплей CSS: нет и конфликт tinyscrollbar

Части обслуживания нуждаются в полосе прокрутки. Я использую tinyscrollbar для этого.

#services { width:1100px; height:440px; bottom:0; position:absolute; top:60px; display:none; } 

При отображении: ни один не включен, полоса прокрутки не работает. Он отображается, но панель не может прокручиваться. Полоса прокрутки работает, когда я удаляю отображение: нет, но она полностью меняет макет. Содержимое услуг (пункт 3-го меню) теперь отображается смешано с содержимым первого пункта меню при первом посещении. Это только при первом посещении. После использования меню проблема исчезла, а макет снова нормальный.

Не могу понять, как это решить.

Пожалуйста, помогите.

Спасибо!

p.s. Я не могу разместить сайт в Интернете сейчас. Я добавил несколько скриншотов, надеюсь, что все станет ясно. deleted display:noneadded display:none первый скриншот отображает прокручиваемую полосу прокрутки, а вторая - нет. Проблема возникает только при входе на веб-сайт. Когда кнопки толкаются, проблема исчезает

p.p.s. Пожалуйста, взгляните на эту проблему. Я загрузил сайт: test.iwebs.ws

+1

некоторые ссылки, чтобы увидеть вашу проблему? –

+0

Не могу увидеть проблему, у вас есть ссылка для нас? – Dorvalla

+0

Извините, я не могу разместить онлайн-сайт прямо сейчас. Я добавил несколько скриншотов, которые, я надеюсь, проясняют ситуацию. – user1747079

ответ

0

Вы можете определить видимость: скрытый вместо дисплей: нет.

видимость: скрытый скрывает элемент, но по-прежнему занимает место в макете.

дисплей: нет полностью удаляет элемент из документа. Он не занимает места, хотя HTML для него все еще находится в исходном коде.

+0

Спасибо, что решает проблему смешивания макета. Однако, когда переход к этой части теперь оставляет мне пустое пространство. Наверное, это потому, что эта видимость: скрытая занимает место? – user1747079

+0

"полностью удаляет элемент из документа" Нет, он все еще находится в DOM и может быть переработан с помощью CSS или доступен через JavaScript. Это просто скрыто. – feeela

+0

прочитайте это, «хотя HTML-код для него все еще находится в исходном коде». – sandeep

0

Вам необходимо использовать функцию tinyscrollbar_update() после того, как вы покажете div, если это было display: none; на странице груз.

var scrollbar = $('#services'); 
scrollbar.tinyscrollbar(); 

$('#services').show(); 

scrollbar.tinyscrollbar_update(); 
+0

Я попробовал, но либо я делаю что-то неправильно, либо просто не работает. Я попытался поместить его в заголовок моего html, а также в тело после отображения: none div. Я также попытался добавить $ ('# scroll1').показать(); к сценарию, как в вашем примере '<тип скрипта = "текст/JavaScript"> \t \t $ (документ) .ready (функция() { \t \t $ ('# свитка') tinyscrollbar();. \t \t \t $ ('# scroll1'). Tinyscrollbar(); \t $ ('# scroll1'). Tinyscrollbar_update(); \t}); ' – user1747079

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