2015-09-01 3 views
0

Я хочу использовать изображение svg в качестве фонового изображения, Я хочу показать все изображение (без урожая) и растянуть изображение до 100% высоты и ширины контейнера div без с сохранением исходного соотношения сторон.Stretch svg background без сохранения пропорций

Я надеялся, что это будет работать:

background-size: 100% 100%; 

Но это не так, высота 100%, но ширина не, это сохранение исходного соотношения сторон.

Если я использую png-изображение вместо svg, оно действительно работает.

Есть ли способ сделать это с помощью svg?

+1

Зависит от того, что 'preserveAspectRatio' устанавливается в фактической SVG кода я угадывание. У вас есть SVG-код? –

+0

Спасибо! Я ничего не знал о svg, но теперь я знаю немного больше, добавив, что решение preserveAspectRatio = «none» было решением. –

ответ

2

Решение:

Открыть файл SVG в текстовом редакторе и добавьте этот атрибут:

<svg preserveAspectRatio="none" 
-2
.sample { 
    height:500px; 
    width:500px; 
    background-image: url('sample.svg'); 
    background-size:cover; 
    background-position:center center; 
} 


<div class="sample"></div> 

Просто попробуйте. Я надеюсь, что это поможет вам

+0

Что делать, если размер экрана меньше 500 пикселей или более 500 пикселей? – niyasc

+0

Спасибо, но размер фона: обложка обложки изображения для сохранения исходного соотношения сторон –

+0

@niyasc это всего лишь образец –

-1

Использование

height:100% ;width:100%; background-size:contain; 

сохранить соотношение фона изображения.

+0

Вероятно, вы работаете с png, но я просто попробовал его с svg, и он не растягивается до 100% ширины, он сохраняет соотношение сторон, вероятно, есть трюк, характерный для svg. –

+0

На самом деле .. Я просто видел, что вы написали «сохранить пропорции», я пытаюсь НЕ сохранить пропорции. –