![]() |
Модераторы: Sardar, Aliance |
![]() ![]() ![]() |
|
motorway |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Имеется некий div с заданным классом, в котором прописана постоянная высота в пикселях.
Имеется код внутри этого div'а, который отображается в нём. Как определить позицию самого нижнего элемента от верха div'а, и если она больше, чем его высота, автоматически изменить высоту, чтобы весь контент был виден в нём? Пример:
В css прописано height:... px; Спасибо -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
Arantir |
|
|||
Рыбак без удочки ![]() ![]() Профиль Группа: Участник Сообщений: 960 Регистрация: 18.11.2012 Репутация: 14 Всего: 55 |
А почему именно так?
Например,
будет делать высоту от min-height до высоты контента (контент всегда виден полностью). И даже без JavaScript. http://jsfiddle.net/g8ZBL/ -------------------- interface Жопа { // ATTENTION: has to be implemented by every class of the project for proper project work } |
|||
|
||||
motorway |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Спасибо. Попробовал у себя этот код, но во внутреннем диве появляются полосы прокрутки. Наверно, от них можно избавиться?
Хотя если контент там такой, что не умещается, они по идее должны быть. Добавлено через 1 минуту и 21 секунду В общем, всё-таки не совсем то, что нужно. Сама высота исходного дива та же - а лишь появляются полосы прокрутки внутри. У меня же по смыслу должен растягиваться основной див. -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
motorway |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Этот див вложен ещё в несколько. Может, из-за этого?
Или можно через offsetTop как-то сделать? -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
Arantir |
|
|||
Рыбак без удочки ![]() ![]() Профиль Группа: Участник Сообщений: 960 Регистрация: 18.11.2012 Репутация: 14 Всего: 55 |
Значит у вас лишние атрибуты в стилях прописаны. Покажите весь класс для блока.
При overflow: auto блок буде растягиваться так, чтобы были видны все внутренние блоки с float: right | left. Что видно из приведенного выше примера http://jsfiddle.net/g8ZBL/ -------------------- interface Жопа { // ATTENTION: has to be implemented by every class of the project for proper project work } |
|||
|
||||
Arantir |
|
|||
Рыбак без удочки ![]() ![]() Профиль Группа: Участник Сообщений: 960 Регистрация: 18.11.2012 Репутация: 14 Всего: 55 |
В JavaScript полную высоту блока вместе с контентом показывает свойство scrollHeight. Если задать блоку высоту, взятую из его scrollHeight, то он станет размером со свой контент.
-------------------- interface Жопа { // ATTENTION: has to be implemented by every class of the project for proper project work } |
|||
|
||||
motorway |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Вот тут http://gg.gg/6ao2 - блок с основным контентом div id="introduction" и остальные не видны на полную высоту. Всё перекопал в CSS, убрал фиксированную высоту, но пока не работает.
Добавлено через 1 минуту и 9 секунд Там сразу несколько классов у внешних дивов. У них тоже убрал фикс. высоту. -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
Arantir |
|
|||
Рыбак без удочки ![]() ![]() Профиль Группа: Участник Сообщений: 960 Регистрация: 18.11.2012 Репутация: 14 Всего: 55 |
Вот так всегда. Спрашивают на форуме одно, а на деле у них совершенно другое.
Первая ваша проблема в том, что блок совсем не такой, как вы показывали в первом посте. А примерно такой:
При этом Вы хотите неким образом делать высоту блока a такой, как у одного из внутренних. Более того, там скроллер и все это делается динамически. То есть CSS уже не прокатит (он больше подходит для статического, постоянного эффекта). Уберите фиксированную высоту из класса panel (внутренние блоки) и добавьте в скрипт после переключения на следующий блок установку высоты для блока с классом scroll равную высоте того panel. на который был переход. -------------------- interface Жопа { // ATTENTION: has to be implemented by every class of the project for proper project work } |
|||
|
||||
motorway |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Я написал про тот див, потому что сначала думал, что другие не должны повлиять.
Вот таким образом? -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
||||
|
|||||
Arantir |
|
|||
Рыбак без удочки ![]() ![]() Профиль Группа: Участник Сообщений: 960 Регистрация: 18.11.2012 Репутация: 14 Всего: 55 |
scrollHeight доступно только для чтения, как и другие похожие свойства http://www.w3schools.com/jsref/dom_obj_all.asp
Используйте стилевые свойства для изменения стиля элемента (в т.ч. его высоты):
-------------------- interface Жопа { // ATTENTION: has to be implemented by every class of the project for proper project work } |
|||
|
||||
motorway |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Что-то не едет... при этом пишет в консоли
Ошибка: SecurityError: The operation is insecure. Источник: http://.../script/global.js Строка: 23 То есть, с того домена, хотя пробую на локалхосте. Вставил вот так:
Ну если не получается, убиваться, конечно, не надо ![]() Добавлено через 2 минуты и 4 секунды Да, изменил, ссылки на свой хост, уже лучше, правда, кое-что поехало. Добавлено через 8 минут и 37 секунд Спасибо. Блок растянулся, правда, при этом поехало кое-что, но это отдельно уже. Видимо, надо пробовать уже на установленном движке. -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
motorway |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
Я снова начал разбираться, так как там не всё правильно. Как можно растянуть прямоугольник картинки фона PNG, который задан? Чтобы картинка растягивалась на всю высоту контента?
-------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
Arantir |
|
|||
Рыбак без удочки ![]() ![]() Профиль Группа: Участник Сообщений: 960 Регистрация: 18.11.2012 Репутация: 14 Всего: 55 |
-------------------- interface Жопа { // ATTENTION: has to be implemented by every class of the project for proper project work } |
|||
|
||||
motorway |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
В общем, снова начал делать - убрал фикс. высоты у дивов, и при этом всё растянулось до высоты первого блока вниз. То есть, и на других вкладках тоже стало до уровня этой вкладки большое пустое место.
Не пойму, как задать высоту соотв. блока для каждой из вкладок:
При переключении непонятно. И этот код почему-то не работает. Добавлено через 4 минуты и 59 секунд Похоже, что не определяется свойство document.getElementById('slider').style.height При проверке оно пустое. -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
motorway |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 578 Регистрация: 2.3.2008 Репутация: нет Всего: 0 |
А как можно сделать плавное изменение высоты слайдеров? При прокрутке слайдеров они меняются скачком.
Добавлено через 3 минуты и 5 секунд Точнее, либо плавное без всяких наездов друг на друга при смене, либо уже полностью готовый вариант с замораживанием экрана на момент смены. -------------------- Russian Pascal Developer Network - Сеть разработчиков на языке программирования Pascal/Object Pascal Форум Delphi/Kylix, Free Pascal Compiler/Lazarus, PascalABC.NET Онлайн-кинотеатр |
|||
|
||||
![]() ![]() ![]() |
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |