インラインSVG -foreignObjectでブラウザのデフォルトスタイルをXHTMLに適用する方法は?

StackOverflow https://stackoverflow.com/questions/5395596

  •  28-10-2019
  •  | 
  •  

質問

インラインSVGがあります foreignObject XHTMLフラグメントを含む要素。ただし、XHTMLコンテンツは、SVGおよびその親HTMLドキュメント(すなわちJQTouchライブラリ)のJSを介して設定されたスタイルのCrosStalkのために、不適切にスタイルされています。したがって、ブラウザのデフォルトスタイルを自分の子供に適用したい foreignObjects。したがって、ブラウザのデフォルトスタイルシートを参照する必要があります。誰かがこれを行う方法を知っていますか? Safariの場合、おそらくWebKitソースからそれを取ることができますが、ブラウザのアップグレード後に変更を追跡する必要がないソリューションを好みます。

ネイティブSVGテキスト要素を使用することは、自動ワードラッピングが必須であるため、オプションではありません。どちらも...

  • トップレベルのCSSスコープからインラインSVGサブツリーを移動します。
  • 問題のあるトップレベルのCSSを変更する(実際、すべてのCSSセレクターを変更し、外部のすべての要素に一意のCSSクラスを追加する foreignObjectSがプログラム的かつ効率的に行うことができる場合、Sはオプションになる可能性があります。うまくいけば、もっとエレガントな解決策がありますか?)

プラットフォーム:Safari 5.0.3(7533.19.4)Win XP SP3

よろしくお願いします

よろしく、カルステン

役に立ちましたか?

解決

デフォルトのスタイルは、XHTMLを頭のボディなどのドキュメント全体として埋め込んだ場合にのみ適用されると思います。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top