2016-07-27 9 views
1

SVGをレンダリングするためのヘルプJSで簡単なHtmlページを作成しましたが、高さによる縮尺はブラウザでは機能しません。どうして?SVGファイルのHTMLページが高さで縮尺されていません

SVGファイルをフルページに拡大するためのテンプレートHTMLページを作成するにはどうすればよいですか?

SVGHTML.html

<!DOCTYPE HTML> 
 
<html lang='en'> 
 
<meta http-equiv='X-UA-Compatible' content='IE=10' /> 
 
<head> 
 
</head> 
 
<body style='margin: 0; overflow: hidden; width: 100%; height: 100%'> 
 
<object id='SVG' height = "100%" width = "100%" type='image/svg+xml' data=image.svg></object> 
 
</body> 
 
</html>

image.svg

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
 
<svg 
 
    xmlns:dc="http://purl.org/dc/elements/1.1/" 
 
    xmlns:cc="http://creativecommons.org/ns#" 
 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
 
    xmlns:svg="http://www.w3.org/2000/svg" 
 
    xmlns="http://www.w3.org/2000/svg" 
 
    version="1.1" 
 
    id="svg2" 
 
    width="100%" 
 
    height="100%" 
 
    preserveAspectRatio="xMinYMin meet" 
 
    viewBox="0 0 300 300" 
 
    > 
 
    <metadata 
 
    id="metadata14"> 
 
    <rdf:RDF> 
 
     <cc:Work 
 
     rdf:about=""> 
 
     <dc:format>image/svg+xml</dc:format> 
 
     <dc:type 
 
      rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 
 
     <dc:title></dc:title> 
 
     </cc:Work> 
 
    </rdf:RDF> 
 
    </metadata> 
 
    <defs 
 
    id="defs12" /> 
 
    <text 
 
    id="text4" 
 
    font-size="24" 
 
    y="50" 
 
    x="25">SVG Circle Element</text> 
 
    <text 
 
    id="text6" 
 
    y="275" 
 
    x="25">Click the circle to change its size.</text> 
 
    <circle 
 
    id="circle8" 
 
    onclick="doCircle(evt)" 
 
    stroke-width="5" 
 
    stroke="green" 
 
    fill="pink" 
 
    r="50" 
 
    cy="150" 
 
    cx="125" /> 
 
</svg>

答えて

0

私は決断を見つけました。カスケーディングスタイルシートCSS 2.1 - 10.5は、生成されたボックスの包含ブロックの高さに対してパーセンテージの高さが計算されると述べています。包含ブロックの高さが明示的に指定されていない場合(すなわち内容の高さに依存する)、この要素は絶対的に配置されていない場合、値は 'auto'に計算されます。収容ブロックがブロックコンテナ要素に基づく絶対配置要素の場合、パーセンテージは、その要素のパディングボックスの幅に対して計算されます。これはCSS1からの変更です。幅のパーセンテージは常に親要素のコンテンツボックスに対して計算されます。

私はSVGファイルでタグオブジェクトにスタイルposition:absoluteを使用する必要があります。

関連する問題