update task
This commit is contained in:
parent
baec82c3f3
commit
6eacea0d4f
2 changed files with 11 additions and 13 deletions
|
@ -39,5 +39,5 @@ var bodyInnerWidth = bodyClientWidth - parseInt(style.paddingLeft) - parseInt(st
|
|||
elem.style.width = bodyInnerWidth + 'px';
|
||||
```
|
||||
|
||||
Такое решение будет работать всегда, вне зависимости от типа элемента.
|
||||
Такое решение будет работать всегда, вне зависимости от типа элемента. Конечно, при изменении размеров окна браузера ширина не адаптируется к новому размеру автоматически, как с `width:auto`. Это недостаток. Его, конечно, тоже можно обойти при помощи событий (изучим далее), но как общий рецепт -- если CSS может решить задачу -- лучше использовать CSS.
|
||||
|
||||
|
|
|
@ -32,24 +32,22 @@
|
|||
</div>
|
||||
|
||||
<script>
|
||||
var elem = document.getElementById("elem");
|
||||
var elem = document.getElementById("elem");
|
||||
|
||||
// неверно!
|
||||
//elem.style.width = '100%';
|
||||
// неверно!
|
||||
//elem.style.width = '100%';
|
||||
|
||||
// верно (решение с CSS)
|
||||
//elem.style.width = 'auto';
|
||||
// верно (так как обычный div по умолчанию растягивается во всю ширину)
|
||||
//elem.style.width = 'auto';
|
||||
|
||||
// верно (решение с JS), т.к. padding указан px
|
||||
// если паддинг в процентах, например 10%, то в IE<9 currentStyle вернет 10%,
|
||||
// и нужно преобразовать % в px через runtimeStyle
|
||||
var bodyWidth = document.body.clientWidth;
|
||||
// верно (решение с JS)
|
||||
var bodyWidth = document.body.clientWidth;
|
||||
|
||||
var style = window.getComputedStyle ? getComputedStyle(elem, '') : elem.currentStyle;
|
||||
var style = getComputedStyle(elem);
|
||||
|
||||
var bodyInnerWidth = bodyWidth - parseInt(style.paddingLeft) - parseInt(style.paddingRight);
|
||||
var bodyInnerWidth = bodyWidth - parseInt(style.paddingLeft) - parseInt(style.paddingRight);
|
||||
|
||||
elem.style.width = bodyInnerWidth + 'px';
|
||||
elem.style.width = bodyInnerWidth + 'px';
|
||||
|
||||
</script>
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue