Amaç, <svg>
bu kap <div>
ne kadar büyük veya küçük olursa olsun , elemanın üst kapsayıcısının boyutuna genişlemesini sağlamaktır, bu durumda a .
Kod:
<style>
svg, #container{
height: 100%;
width: 100%;
}
</style>
<div id="container">
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" >
<rect x="0" y="0" width="100" height="100" />
</svg>
</div>
Bu problemin en yaygın çözümü, viewBox
özniteliği <svg>
öğeye ayarlamak gibi görünüyor .
viewBox="0 0 widthOfContainer heightOfContainer"
Ancak, eleman içindeki elemanların <svg>
önceden tanımlanmış genişliklere ve / veya yüksekliklere sahip olduğu durumlarda bu işe yaramıyor gibi görünmektedir . Örneğin <rect>
, yukarıdaki koddaki öğenin genişliği ve yüksekliği açıkça ayarlanmıştır.
Dolayısıyla bariz çözüm, bu elemanlarda da% genişlik ve% yükseklik kullanmaktır. Ama bunun yapılması gerekiyor mu? Özellikle, <img src=test.svg >
iyi çalıştığından ve açıkça belirlenmiş <rect>
yükseklik ve genişliklerle sorunsuz bir şekilde genişler / daralır .
Gibi öğelerin <rect>
ve buna benzer diğer öğelerin genişlik ve yüksekliklerinin yüzde olarak tanımlanması gerekiyorsa, Inkscape'de bunu <svg>
belgeye sahip tüm öğelerin sabit boyutlar yerine yüzde genişlik, yükseklik vb. Kullanması için ayarlamanın bir yolu var mı? ?