Использование SVG в качестве фонового изображения
Кажется, я не могу заставить это работать по своему желанию. Моя страница меняет высоту в зависимости от того, какой контент загружен, и если для этого требуется свиток, svg, похоже, не растягивается...
html {
height: 100%;
background-image: url(http://www.horizonchampion.eu/themes/projectbase/images/bg.svg);
background-size: 100% 100%;
-o-background-size: 100% 100%;
-webkit-background-size: 100% 100%;
background-size: cover;
}
<svg width="1024" height="800" xmlns="http://www.w3.org/2000/svg">
<defs>
<radialGradient fy="0.04688" fx="0.48047" r="1.11837" cy="0.04688" cx="0.48047" id="svg_2">
<stop stop-color="#ffffff" offset="0"/>
<stop stop-opacity="0" stop-color="#eaeaea" offset="1"/>
</radialGradient>
<radialGradient fy="0.04688" fx="0.48047" r="1.71429" cy="0.04688" cx="0.48047" id="svg_5">
<stop stop-color="#ffffff" offset="0"/>
<stop stop-opacity="0" stop-color="#eaeaea" offset="1"/>
</radialGradient>
</defs>
<g display="inline">
<title>Layer 1</title>
<rect fill="#eaeaea" stroke-width="0" x="0" y="0" width="1024" height="800" id="svg_1"/>
</g>
<g>
<title>Layer 2</title>
<rect id="svg_3" height="282" width="527" y="1" x="1" stroke-width="0" fill="url(#svg_2)"/>
<rect id="svg_4" height="698" width="1021.99999" y="1" x="1" stroke-width="0" fill="url(#svg_5)"/>
</g>
</svg>
Ответы
Ответ 1
Вы можете попробовать удалить атрибуты width
и height
в корневом элементе svg, добавив вместо него preserveAspectRatio="none" viewBox="0 0 1024 800"
. Это имеет значение в Opera, по крайней мере, если вы хотите, чтобы svg растянулся, чтобы заполнить всю область, определенную стилями CSS.
Ответ 2
Попробуйте разместить его на body
body {
height: 100%;
background-image: url(../img/bg.svg);
background-size:100% 100%;
-o-background-size: 100% 100%;
-webkit-background-size: 100% 100%;
background-size:cover;
}
Ответ 3
Вы установили фиксированную ширину и высоту в тэге svg. Вероятно, это корень вашей проблемы. Не пытайтесь их удалить и установите ширину и высоту (если необходимо) с помощью CSS.