Эрик, вы не были очень конкретны.
Например, если «parent» является фиксированной процентной высотой «grandparent», то это простая математика, чтобы установить процентную высоту дочернего элемента в CSS, не требуется JS.
В противном случае, с JQuery, если вы хотите, чтобы ребенок 25% высота прародителей:
var grandparent_height = $('#grandparent').height();
$('#child').height(grandparent_height * 0.25);
Есть еще на ваш вопрос, чем это?
Если вы хотите установить размер дочернего элемента по отношению к окну просмотра, и вы довольны работой только с современными браузерами, то вы можете использовать модуль CSS vh (1vh - 1% высоты видового экрана) и установить
#child {
height: 25vh;
}
Различные браузеры могут возвращать разные результаты при измерении размера видового экрана. Вот хороший ресурс (и библиотека JavaScript) о различном лечении браузера: http://verge.airve.com/)
Эй, Спасибо большое. Я использовал $ (". Menu_container"). Css ('height', $ ('. Window'). Height() - 200); который -200px, но я не мог заставить его быть процентной базой. Я знаю, что раньше я не предоставлял информацию, но с кодом есть еще одна вещь. Это то, что мой дед-дед имеет высоту и ширину 100%, так что это полный экран. Так как видовой экран изменяется, значит, div. И я надеялся, что jquery на процентной основе ответит на изменение видового экрана, но по какой-то причине он этого не делает. какие-либо предложения? В принципе, мне нужно, чтобы дочерний div отвечал на видовое окно по мере его изменения. – Erik
Если вы намерены установить рост ребенка в процентах от области просмотра, и вы счастливы использовать javascript (или JQuery), то не беспокойтесь о размерах дедушки и бабушки, задайте высоту ребенка напрямую. Итак, абстрагируясь от проблем, связанных с перекрестным браузером, 'viewportH = $ (window) .height();' и устанавливаем '$ ('# child'). Height (0.25 * viewportH);' Если вас беспокоит совместимость с кросс-браузером, проверьте ссылку, которую я разместил, которая позаботится об этом для вас. – terraling