2017-01-13 3 views
-1

Я пытаюсь сделать изображение отзывчивым, но когда я тестирую его с разными размерами экрана, он отсекает часть изображения. Мой CSS довольно прямолинейный, как показано ниже. Вот мой codepenизображение нет отзыв когда экран размер меняется.

.mainImage { 
    position: relative; 
    background-repeat: no-repeat; 
    background-size: cover; 
    background-position: top center; 
    background-attachment: fixed; 
    width: 100%; 
    min-width: 100%; 
    margin-right: 0; 
    margin-left: 0; 
    height: 600px; 
    margin-top: -85px; 
    background:url(https://s-media-cache-ak0.pinimg.com/originals/12/5d/ba/125dba934726c247106978c7b9cdb452.jpg) 
} 

Что мне не хватает или может делать неправильно?

+0

Какие части изображения обрезаются, но должна оставаться внутри? Вы также можете использовать 'background-size: contains' для принудительного отображения изображения. –

+0

- это [это] (http://codepen.io/anon/pen/GrqvGW), чего вы пытаетесь достичь? – Lal

+0

@KeesvanLierop больше правой стороны, но оба они отрезаны – Nofel

ответ

2

вы настройка Вы все «background-» части первой, а затем определение «фон» в сокращенном, который перезаписи. Изменить порядок ...

.mainImage { 
position: relative; 
background:url(https://s-media-cache-ak0.pinimg.com/originals/12/5d/ba/125dba934726c247106978c7b9cdb452.jpg) 
background-repeat: no-repeat; 
background-size: cover; 
background-position: top center; 
background-attachment: fixed; 
width: 100%; 
min-width: 100%; 
margin-right: 0; 
margin-left: 0; 
height: 600px; 
margin-top: -85px; 
} 

Или не использовать сокращенную ...

background-image: url(https://s-media-cache-ak0.pinimg.com/originals/12/5d/ba/125dba934726c247106978c7b9cdb452.jpg) 
0

попробуйте добавить следующее:

background-size: 100% 100%; 
+0

Он работает, но он сжимает мое изображение. – Nofel

+0

Возможный 'размер фона: 100vw;' – Achmed

1

Вы также можете использовать background-size: contain вместо крышки, чтобы заставить изображение полностью отобразить.

cover полностью заполнит весь фон.

contain будет убедиться, что все изображение отображается внутри элемента

Кроме того, необходимо применить эти свойства фона для укладки после основной фон в стиле.

Итак:

.mainImage { 
    position: relative; 
    width: 100%; 
    min-width: 100%; 
    margin-right: 0; 
    margin-left: 0; 
    height: 600px; 
    margin-top: -85px; 
    background:url(https://s-media-cache-ak0.pinimg.com/originals/12/5d/ba/125dba934726c247106978c7b9cdb452.jpg); 
    background-repeat: no-repeat; 
    background-size: contain; 
    background-position: top center; 
    background-attachment: fixed; 
} 
Смежные вопросы