我正在嘗試使 SVG 在 x 軸上具有回應性,但我不希望它隨視窗縮放。事實上,我想讓它保持相同的縱橫比,相同的高度,并填充相同的父div,因此它會在寬度軸的中心放大視圖框。
它看起來像這樣:

我目前正在玩視圖框,我有
(對于 WinWidth < SvgWidth && WinWidth > SvgWidth/ 2) , deltaWidth = SvgWidth - WinWidth
viewbox = ((deltaWidth / 2) 0 (SvgWidth - deltaWidth) SvgHeight)
但這不起作用,因為父 div 的頂部和底部仍有空格。你能向我解釋一下我做錯了什么嗎?我想這是因為寬度和高度之間的比率不再相同,但我不知道如何安排。提前致謝
uj5u.com熱心網友回復:
正如我所想,它與 svg 的比率與視窗的比率不同有關。這是我簡單制作的。由于我在互聯網上沒有看到任何關于此的資訊,也許它會有所幫助,請享受 :)
ratioWidth = SvgHeight * WinWidth / WinHeight
viewBox= ((SvgWdth - ratioWidth / 2) 0 ratioWidth SvgHeight)
但正如 enxaneta 所說,你可以用 `height="100vh" width="100vw"preserveAspectRatio="xMidYMid slice" 來做到這一點,在我看來它更干凈。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/361043.html
上一篇:MUI如何更改TablePagination組件內的圖示?
下一篇:Svg反應本機
