Umgehen der @ font-face-Deklaration, die die Schriftfamilie "helvetica" überschreibt

8

Ich habe ein Bookmarklet, das ein Widget in die Seiten einer beliebigen Site einfügt. Das Design des Widgets wird von einer bestimmten Website mit der folgenden CSS @font-face -Deklaration unterbrochen:

%Vor%

Das Widget, das mein Bookmarklet einfügt, verwendet helvetica überall und auf dieser einen Seite sieht es schrecklich aus, weil der Browser helvetica auf die @font-face -Deklaration dieses Namens anstatt auf die Standard-helvetica-Systemschriftart abbildet.

Die Frage: Gibt es eine Möglichkeit, diese @font-face -Deklaration zu überschreiben / zu umgehen oder eine weitere @font-face -Deklaration zu erstellen, die dem System helvetica font zugeordnet ist?

    
Tautologistics 12.06.2012, 15:20
quelle

4 Antworten

4

Wenn das Stylesheet es nicht durch Verweis auf das Stylesheet mit !important nach dem Stylesheet Ihres Widgets überschreibt, könnte dies funktionieren:

%Vor%     
Anish Gupta 12.06.2012, 15:44
quelle
3

Sie können die folgenden CSS hinzufügen, um einen benutzerdefinierten Schriftartnamen zu erstellen, der einer lokal installierten Schriftart entspricht:

%Vor%

Für das Styling des Widgets sollten Sie folgendes verwenden:

%Vor%

Wenn Sie mehr Schriftarten wie fett und kursiv verwenden, müssen Sie alle definieren:

%Vor%     
ausi 12.06.2012 15:37
quelle
1

Sobald ich diese Frage gestellt habe, habe ich mich inspirieren lassen. Was ich gefunden habe, ist das folgende ...

Erstellen Sie eine der folgenden CSS-Regeln:

%Vor%

In den Elementen, die die echte helvetica-Systemschriftart benötigen, geben Sie die Schriftfamilie als 'RealHelvetica' anstatt nur als helvetica an:

%Vor%     
Tautologistics 12.06.2012 15:34
quelle
0

Wickeln Sie Ihr Widget in einen iframe. Ich weiß nicht, ob es die beste Lösung ist, aber es ist eine Lösung.

Ссылка

%Vor%

Bonus: Sollte Ihr Widget in Zukunft gegen die meisten anderen CSS- oder Schriftartenprobleme schützen.

    
DG. 12.06.2012 15:39
quelle

Tags und Links