iframeをロードしようとしていて、カスタムCSSスタイルを挿入するためにロードされた後です。しかし、私はページを読み込んでいるとき、私は自分のCSSスタイルが分割されて表示され、その後、最終的にそれが私のスタイルをオーバーライドし、それが消えるiframeがロードされて表示されます。iframeはロード時にカスタムCSSを上書きします。
iframeがロードされるまで待つ必要がありますが、私はそうしようとしましたが、成功することはありませんでした。
次のコードラインの実行後にデバッガを停止すると、バックグラウンドの変更が表示されます。しかしそれは消える。
.append('<style> body{background:red;}</style>');
コードスニペットを見てください。
(function(){
var iFrame = $('iframe');
var contents = iFrame.contents();
var styleTag = contents.find('head').append('<style> body{background:red;}</style>');
})();
#my-iframe {
width: 100%;
height: 600px;
}
#middle-container {
width: 500px;
margin-left: auto;
margin-right: auto;
}
#iframe-container {
width: 100%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<html>
<head>
<title>iFrame Test Page</title>
</head>
<body>
<div id="middle-container">
<div id="iframe-container">
<iframe id="my-iframe" src="http://www.w3schools.com">
<p>Sorry! Your browser doesn't support iFrames</p>
</iframe>
</div>
</div>
</body>
</html>
を! CSSスタイルで重要ですか? –