проблема с вычислением высоты элемента
Есть простой div у которого размеры задаются динамически, то есть могут быть как точное значение так и в процентах. Внутри него добавляется еще один div у которого размеры заданы под 100%, чтоб он заполнил полностью родительский div. Задача узнать размер дочернего div'а.
С шириной все ясно: element.offsetHeight А вот с высотой возникают косяки, высота видимо в зависимости от reflow прыгает, как узнать конечный размер все таки?:help: |
Цитата:
|
Цитата:
element.offsetWidth короче вопрос остается открытым |
<html>
<head>
<style>
#div1 {
height: 300px;
width: 200px;
border: 1px solid;
}
#div2 {
border: 1px solid red;
height: 100%;
}
</style>
</head>
<body>
<div id="div1">
<div id="div2"></div>
</div>
<script language="JavaScript">
element = document.getElementById( "div2" );
alert(element.offsetHeight);// Отображает высоту
alert(element.offsetWidth);// Отображает ширину
</script>
</body>
</html>
Так что ли надо вам ? И вы немножко перепутали: Цитата:
element.offsetWidth - ширина |
Цитата:
Не помог, зато выговорился. |
да вроде того
|
Цитата:
а если указать родителю ширину и высоту 100% и заменить доктайп:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="en">
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="en">
<head>
<style>
html, body {
height: 100%;
}
#div1 {
height: 100%;
width: 100%;
border: 1px solid;
}
#div2 {
border: 1px solid red;
height: 100%;
}
</style>
</head>
<body>
<div id="div1">
<div id="div2"></div>
</div>
<script language="JavaScript">
element = document.getElementById( "div2" );
alert(element.offsetHeight);// Отображает высоту
alert(element.offsetWidth);// Отображает ширину
</script>
</body>
</html>
в стилях укажите тегу "html" и "body" - height: 100%;
html, body {
height: 100%;
}
|
да помогло, спасиб, у меня правда есть все равно ситуация при которой не срабатывает, как поймаю этот момент, опишу его здесь может подскажите
|
| Часовой пояс GMT +3, время: 13:47. |