2017-02-16 5 views
0

1) Ich weiß, dass ich ein Schriftart-Symbol mit Pseudo-Selektoren (vor, nach) und "Inhalt" verwenden kann, aber es ist keine skalierbare Lösung, da ich viele Änderungen an Padding, links, oben usw. in verschiedenen vornehmen müssen SituationenWie kann ich ein Schriftartsymbol als Hintergrundbild verwenden?

2) Mit Daten-URI eine Svg ist in Ordnung, aber ich muss die Füllung/Farbe der Svg basierend auf verschiedenen Aktionen ändern. Ich habe die Fill-Eigenschaft ausprobiert, aber es funktioniert nicht wirklich.

Ich kann die Farbe extern ändern/bearbeiten, aber ich habe eine Menge von Variationen und wieder nicht


Dem Symbol Fonts (ex: FontAwesome) skaliert für den Browser kommt mit SVG-Dateien. Es ist möglich, irgendwie diese Datei in CSS zu verwenden (wie Bildsprites)?

+1

Pseudo Element Trick ist super flexibel. Ich verstehe nicht wirklich, warum du es nicht benutzen kannst. –

Antwort

1

Wenn Sie Eigenschaften von SVGs ändern möchten, muss es inline platziert werden. Mit einem SVG als Hintergrund und ändern Eigenschaften werden nicht funktionieren.

Bibliotheken wie FontAwesome geben Ihnen eine font, nicht svg, die Sie auch nicht als Hintergrund festlegen können.

Ich sehe nicht das Problem der Verwendung der psuedo-Selektoren: vor und: nach dafür. Sie sind meiner Meinung nach sehr skalierbar.

Wenn Sie es wirklich anders machen möchten, sollten Sie etwas von Ihrem Code mit uns teilen, damit wir besser verstehen, was Sie zu tun versuchen.

+0

Ich möchte die Symbole in Formularfelder, links oder rechts, positionieren. Ich habe viele Variationen als Größe der Eingabe, aber auch als Zustand (definiert, wo links oder wright) und wann. Weil nicht vorher haben kann, nachdem ich ein Elternelement und das Symbolelement hinzufügen muss. Kombiniere dies mit vielen Variationen für CSS (Padding, Ränder etc.) Ich habe viel Arbeit. Verwenden Sie sie als Hintergrund (fügen oder entfernen Sie eine Klasse) mit nur dem Eingabeelement Ich denke, ist weniger "intensiv", weniger Code und skalierbar. – user3541631

+0

Sie können eine Eingabegruppe div erstellen, die ein Eingabeelement und ein div mit dem Hintergrund enthält. Wählen Sie dann das Hintergrundelement .input-group .background-element und positionieren Sie es absolut in die Eingabe. Oder wähle es mit Eingabe + .background-element –

+0

danke, ich werde versuchen – user3541631

Verwandte Themen