Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Помогите определить ширину блока (padding, блочная модель) (https://javascript.ru/forum/dom-window/40673-pomogite-opredelit-shirinu-bloka-padding-blochnaya-model.html)

Василий Б. 15.08.2013 11:09

Помогите определить ширину блока (padding, блочная модель)
 
Всем привет!
Написал скрипт показа картинок в новом окне. Все работает, но есть некоторые проблемы и недопонимания.

Решение было такое: определяем размер изображения, рисуем DIV-блок с таким же размером посередине страницы и вкорячиваем в него изображение.
Но для DIV-блока нужно сделать padding, допустим в 10px.
Допустим, изображением имеет размер 500х500 px. По моей логике размер DIV должен быть 520х520 (image.width + padding-left + padding-right и image.height + padding-top + padding-bottom).
НО делая размер блока 520х520 и добавляя динамически стиль padding:10px я получаю DIV, визуально гораздо больший по размерам (очевидно из-за padding). Т.е. padding как бы расширяет указанный в стилях размер DIV-блока. Мне это не подходит, т.к. для корректного позиционирования DIV блока посередине страницы нужно знать его ТОЧНЫЙ размер, хотя по факту с учетом padding-ов он больше и получить точный его размер не получается.

рони 15.08.2013 11:25

Василий Б., а если так
"рисуем" див с падингом - вставляем изображение -- центрируем

Kvark 15.08.2013 13:09

почему padding а не margin?

Василий Б. 15.08.2013 14:15

padding нужен для обрамляющего popup блока:

<div id="popupImage">
    <div><span>[закрыть]</span></div>
    <img src="...">
</div>


вот пример - http://www.adverts.ru/categories/zhi...ki/34167.xhtml
вот код - http://www.adverts.ru/http/js/library/main.js

убрал задание ширины и высоты для DIV-блока DIV теперь аккуратно обрамляет изображение. Отлично. Реально ли теперь вычислить ширины/высоту изображения без ручного пересчета?


Часовой пояс GMT +3, время: 07:34.