[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: растянуть изображение
Страницы: 1, 2
123456
Есть страничка. На ней имеется изображение. Это изображение надо растянуть так, чтоб высота или ширина были по размерам экрана(чтоб изображение вмещалось на экран без повторений).
Все вроде бы сделал... Но вот не могу разобраться с рамкой...
как сделать, чтоб рамка была по блоку?

https://jsfiddle.net/9zsat8re/


PS. Изображение должно поместиться в максимальном размере, без выступов за границы ВИДИМОЙ ЧАСТИ ЭКРАНА(резиновая верстка) и рамка должна лежать по самому изображению.
icedfox
держите https://jsfiddle.net/9zsat8re/1/
123456
Это не то
Вот наглядный пример.

Имеем это
user posted image

А надо получить вот это!
user posted image

Так же обратите внимание на рамку
Kusss
на фон нельзя повесить бордер.
а вон нарисовать на картинке - можно smile.gif
123456
Kusss
фон оранжевый, на него я не вешаю бордер
бордер вешаю на блок с изображением.
icedfox
Цитата (123456 @ 20.08.2015 - 14:22)
А надо получить вот это!

#post {
height: 100%;
}

растягивает ваш див на всю высоту контейнера, уберите его. По хорошему вам надо два дива использовать, один блочный с фоном, и внешний для него с рамкой.
Kusss
твой мишка - это тоже фон.
acerrusm
#post {
background: url(http://www.radionetplus.ru/uploads/posts/2013-05/1369460629_panda-1.jpeg) no-repeat;
background-size: cover; /* убрал contain */
background-position: right; /* center, left, right, etc */
height: 100%;
width: 100%;
margin: auto;
border-style: solid;

}
123456
Уточню задачу.

Есть картинка - фон.
Надо ее разместить на ВИДИМОЙ области экрана таким образом, чтоб она ПОЛНОСТЬЮ, отобразилась в максимальном разрешении(можно сжимать и увеличивать, НО НЕ ОБРЕЗАТЬ), а оставшееся пространство залить определенным цветом. Размеры блока должны быть подстроены под размеры картинки(фона), чтоб можно было обвести в бордер.


Сейчас все это делаю через js, но хотелось бы сделать на css
Razzwan

body {
background: #3c3c3c;
color: white;
margin: 0;
width: 100%;
}
#wrapper{
background: url(../img/pol.jpg) no-repeat right center;
background-size: cover;
border: 2px solid red;
display: block;
height: h%;
position: absolute;
top: 50%;
width: 100%;
margin-top: -h/4%;
}


где h = (высота изображения в px/длинна изображения в px)*100

_____________
Youtube канал WebDeveloper->Run()
Сайт для души
Gitter
123456
Что-то не полностью работает Ваш вариант!

Размеры изображения: 1080 x 1920
1080/1920/100 = меньше нуля..
по этому я не поделил, а умножил на 100. Получилось 55

Но не работает... Растяните окно просмотра, фон обрезается

https://jsfiddle.net/s0sd2308/
123456
решил задачу с помощью calc()
123456
вот что получилось!
https://jsfiddle.net/s0sd2308/1/
PS. на jsfiddle.net что-то не на всю ширину, но у меня все работает на ура!
Теперь как выровнять по центру вертикали?
думал margin: calc((100vh-(100vw/1701*933))/2) 0;
но в clc можно использовать только одну единицу измерения (vh и vw вместе использовать нельзя)
Zzepish
123456
у calc еще куча багов! я как-то писал код. Так не понимал- почему какой-то оператор не работает! Оказывается- там еще и проблы ставить обязательно!
Razzwan
Цитата
Теперь как выровнять по центру вертикали?

Мой вариант рабочий. Еще раз перепроверил. Все размеры задаем в процентах.
background-size: cover;

В вашем варианте можно сделать то же самое.


top: 50%;
margin-top: -x; /*x высчитать*/


_____________
Youtube канал WebDeveloper->Run()
Сайт для души
Gitter
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.