Jump to content
  • 0

Как вписать объект в div блок?


Elmirill
 Share

Question

Здравствуйте!

Возникла необходимость вписать объект (допустим картинку) в блок div таким образом, чтобы картинка ужималась (растягивалась) до размера div блока. Для примера: на сайте есть большая картинка по центру, и эта картинка при открытии сайта в браузере автоматом масштабируется до размера окна браузера.

Конкретно интересует два аспекта:

1). Как вписать картинку с сохранением пропорций.

2). Как растянуть картинку по всему блоку без сохранения пропорций.

Спасибо.

Link to comment
Share on other sites

10 answers to this question

Recommended Posts

  • 0
1). Как вписать картинку с сохранением пропорций.

Задать только один параметр (или width или height) равным 100%, тогда пропорции сохранятся. Ну или считать на JavaScript.

2). Как растянуть картинку по всему блоку без сохранения пропорций.

Задать оба параметра и ширину, и высоту.

У родителя должна быть обязательно задана высота (ширина не обязательно).

Link to comment
Share on other sites

  • 0

В том то и дело, что родитель не имеет постоянной величины, а подстраивается под окно браузера. И в этом случае, картинка не помещается на экране. Картинка должна ужиматься до текущего размера окна.

Link to comment
Share on other sites

  • 0

psywalker, спасибо за наглядный пример.

На самом деле, чуть не то, что я имел в виду.

Можно сделать так, чтобы картинка масшабировалась при смене размеров окна, а не только при загрузке?

И, самое главное, можно ли обойтись без JS? Силами html, css и php?

Чтобы было нагляднее, вот сайт: http://www.delirio.pro/

На нем два объекта: картинка как фон, которая растягивается под окно браузера, и картинка с лого и надписями, которая также должна быть в центре и масштабироваться под окно, но только с сохранением пропорций. Сама картинка заключена в два блока - один родительский, и занимает все окно браузера, второй центрирует картинку по вертикали и горизонтали внутри родительского. Цель - масштабировать картинку на весь родительский блок, чтобы пользователь с плазменной панелью, также как и пользователь с монитором на разрешении 1024х768 видели картинку на весь экран. Ну и повторюсь, желательно методами html, css и php.

Оффтопик: существует ли возможность использования векторной графики на сайте?

Link to comment
Share on other sites

  • 0

А, ну конечно такое возможно с помощью html, css. На том сайте это делается обычной картинкой, которая лежит абсолютом нижнем слоем и растянуто на весь экран.

Вот тебе пример кстати http://psywalker.ru/Portfolio/AndreyDekhty.../main-page.html

Link to comment
Share on other sites

  • 0

Вроде бы почти разобрался.

Непонятно только, можно ли масштабировать одновременно по width и по height, но с сохранением пропорций? то есть, если окно вытянуто по горизонтали, то масштабирование идет по height. Окно вытянуто по вертикали - по width.

И еще такой нюанс:

На странице два блока - один родитель, на весь экран, второй в родителе, и он отцентрирован по вертикали и горизонтали внутри родителя (родитель имеет отображение таблицы). Так вот, когда прописываю второму блоку параметры width и height 80%, сбивается центровка по горизонтали, он съезжает вправо. От чего такое может быть?

Edited by Elmirill
Link to comment
Share on other sites

  • 0

Спасибо, вопрос решен!

Непонятно одно: можно ли масштабировать одновременно по width и по height, но с сохранением пропорций? то есть, если окно вытянуто по горизонтали, то масштабирование идет по height. Окно вытянуто по вертикали - по width. Реально ли это?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy