Ich habe diesen SVG Slider gemacht.Wie schiebt man einen Responsive SVG Slider?
Wenn über die roten Balken unten schweben den Regenbogen Rechteck#moveSVG
sollte slide von rechts oder umgekehrt nach links. Das funktioniert gut, aber nur wenn ich die #moveSVG
nicht reagiere.
Als ich machen das SVG ansprechbar durch ..
- .. die
width
undheight
zu entfernen und es mit CSS100vw
und100vh
- .. Hinzufügen
viewBox="0 0 5200 900" preserveAspectRatio="xMinYMax slice"
Einstellung. .it funktioniert nicht mehr. Das Rechteck ist abgeschnitten. (Siehe Snippet)
Nun, wie kann ich diese ansprechenden Schieber machen, ohne sie zu schneiden?
P.S. Es gibt zwei Lösungen, die ich lieber nicht verwenden:
- statt sich zu bewegen durch
transform
-translate
Einstellung kann ich dieviewBox
x ändern koordinieren, aber das scheint schlampig, da muss ich nicht die y Breite ändern und Höhe - Ich kann die
transform
auf dem Sub-SVG #bandsSVG verwenden, aber im realen Projekt gibt es 3 sub-SVGs, also würde ich es 3 mal tun müssen. Scheint auch schlampig.
-Code ->https://jsfiddle.net/e_motiv/53w0unc3/
Könnten Sie auch das Snippet ohne Responsive Modifikationen schließen uns wie es funktioniert sehen lassen? –
Ich verstehe deine Argumentation nicht. Warum ist 'setAttribute (" viewBox ", totalTransform +" 0 5200 900 "" mehr "schlampig" als "setAttribute (" transform "," translate ("+ totalTransform +", 0) ")? – ccprog
Ich habe die Lösung inzwischen gefunden Entschuldigung, ich dachte nicht, dass ich es finden würde Ich werde es als meine eigene Antwort veröffentlichen cprog, ich weiß, es ist Perfektionismus, aber gut ... –