CSS ルール値を抽出する方法
CSS ルールのすべての内容を含む文字列 (形式のようなもの) を返すにはどうすればよいですか?インラインスタイルで見ることができますか?これは、ルールの具体的な内容を知らなくても実行でき、スタイル名でルールを抽出する必要がなくなります。
次の CSS を考えてみましょう:
.test { width:80px; height:50px; background-color:#808080; }
まず、次のものがあります。コード:
function getStyle(className) { var classes = document.styleSheets[0].rules || document.styleSheets[0].cssRules for(var x=0;x<classes.length;x++) { if(classes[x].selectorText==className) { //this is where I can collect the style information, but how? } } } getStyle('.test')
sunliffe の回答に基づいて構築し、別のソースから適応して、このコードを拡張して CSS ルールを抽出できます。値:
function getStyle(className) { var cssText = ""; var classes = document.styleSheets[0].rules || document.styleSheets[0].cssRules; for (var x = 0; x < classes.length; x++) { if (classes[x].selectorText == className) { cssText += classes[x].cssText || classes[x].style.cssText; } } return cssText; } alert(getStyle('.test'));
このコードは CSS ルールを調べて、セレクター テキストが指定されたクラス名と一致するかどうかを確認します。一致ルールごとに、対応する CSS テキストを収集し、それを cssText 変数に蓄積します。最後に、この関数は蓄積された CSS テキストを返し、必要なインライン スタイル形式の文字列を提供します。
以上がCSS ルールの内容全体を文字列として抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。