За последние 24 часа нас посетили 17434 программиста и 1720 роботов. Сейчас ищут 1517 программистов ...

<img> по размерам элемента <div> c пропорциями

Тема в разделе "HTML и CSS", создана пользователем enshtein, 14 мар 2007.

  1. enshtein

    enshtein Активный пользователь

    С нами с:
    27 авг 2006
    Сообщения:
    291
    Симпатии:
    0
    Как сделать, так чтобы браузер уменьшал размеры картинки <img> по размерам элемента <div> - при этом сохранялись все пропорции размеров картинки, т.е.
    Код (Text):
    1.  
    2. <div style="width: 450px;">
    3. <img src="post13.gif">
    4. </div>
     
  2. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    Код (Text):
    1. <div style="width: 450px;">
    2.    <img src="post13.gif" style="width: 100%;" />  
    3. </div>
     
  3. enshtein

    enshtein Активный пользователь

    С нами с:
    27 авг 2006
    Сообщения:
    291
    Симпатии:
    0
    Да это конечно помогает когда картинка больше, но когда она меньше - то браузер вместо того чтобы оставить ее в покое, увеличивает на все эти 100% (450px) - получается лажа!

    Хотелось бы чтобы та графика, которая не проходит по размерам div'а уменьшалась (пропорционально!!!), а остальная не изменяла своих исходных размеров!
     
  4. enshtein

    enshtein Активный пользователь

    С нами с:
    27 авг 2006
    Сообщения:
    291
    Симпатии:
    0
    Нашел решение вида:

    HTML:
    1. <div>
    2. <img src="post13.gif" style="max-width: 450px;" />
    3. </div>
    Однако IE глухо игнорирует и просто обрезает по ширине графику - что не есть хорошо, в Opere все путем!
    Мож у кого есть мысли - как сделать так чтобы и в Opera и в IE одинаково было?
     
  5. enshtein

    enshtein Активный пользователь

    С нами с:
    27 авг 2006
    Сообщения:
    291
    Симпатии:
    0
    ВСЕ!!! ТЕМУ МОЖНО ЗАКРЫВАТЬ!
    Тока что нашел решение проблемы
    может кому понадобиться - вот:

    Содержание CSS:

    [css].images-post {
    overflow: hidden;
    padding-left: 20px;
    padding-bottom: 10px;
    width: 500px;
    }

    .images-post img {
    max-width: 500px;
    width:expression(this.width > 500 ? "500px" : this.width);
    }[/css]


    непосредственно HTML:


    HTML:
    1. <div class="images-post">
    2. <a href="firefox-gray.jpg">
    3. <img src="firefox-gray.jpg"></a>
    4. </div>
    Все это было нужно для того, чтобы посетители моего блога могли прикреплять картинки к постам! А решение проблемы - позволило избежать всяких гадостей происходивших с дизайном блога - когда посетитель добавлял картинку шириной более 500 px - теперь картинки отображаются как надо (не более 500 px в ширину) - не ломая дизайн сайта - а для того чтобы увидеть полный вариант картинки - стоит просто щелкнуть по ней мышью! - КАК РАЗ ТО ЧТО БЫЛО НУЖНО!
     
  6. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    т.е. если юзер запостит 50 гигобайтную картинку то вы ее не обрежете на сервере. круто
     
  7. enshtein

    enshtein Активный пользователь

    С нами с:
    27 авг 2006
    Сообщения:
    291
    Симпатии:
    0
    а как же он ее запостит сударь? а?
    upload_max_filesize - это раз! а $_FILES['name']['size'] - это два!
     
  8. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    OFF
    а злая шутка админа который может через ftp кинуть? а дальше пользователи? зашедшие на сайт? будут попадать на бабло даже не подозревая об этом, если инет тарифицирован...
     
  9. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    гы, а против нее спасет ресайз картинок при загрузке?:)
     
  10. enshtein

    enshtein Активный пользователь

    С нами с:
    27 авг 2006
    Сообщения:
    291
    Симпатии:
    0
    да брось - у меня хостинг-площадка на 250 Mb! да и вообще нафига это кому надо
     
  11. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    enshtein

    аккуратнее цитируйте..
    я то, что процитировано постом выше, не писал.
     
  12. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    ну ты же можешь, например, бэкграунд сделать как белый bmp весом 200 "метров" - не будет видно как он постепенно загружается.
    или я не прав? в статусбаре будет наверное что-то типа "осталось изображений: 1"... но ведь и это можно задавить.

    а про надобность опять-таки читайте внимательнее.
    предположим на 1 апреля подставить сотрудников некой фирмы на траффик.

    P.S. я не такой и так бы никогда не сделал :D просто фантазия бурная.