0

私は現在、主に自社の Web サイトで使用することを目的とした小規模な広告ネットワークを構築しています。

広告は、次のようなスクリプトをサイトに含めることによって読み込まれます...

<script src="http://someurl.com/somejs.js"></script>

スクリプト行を配置する場所はどこでも、インライン スタイリング内の広告コンテンツに置き換えられます。広告は HTML でなければならず、それが私を悩ませているのです...

たとえば、広告の内容が次のようなものであるとしましょう。

<div style="height: 150px; width: 90px; overflow: hidden; display: inline-block;"><p>Buy cheap buttons</p><p><img src="deliciousButtons.png" /></p></div>

そして、誰かがスタイルシートに次のように記述している Web ページにコンテンツが読み込まれたとします。

img { border: 1px solid red; }

広告の画像に赤い枠が表示されるようになりました。残念です。

私の唯一の解決策は、iframe を使用することです...しかし、私は iframe があまり好きではありませんでした。

内部に HTML を配置できる html 要素はありますか?内部に配置されたものはすべて、スタイルシートの設定の影響を受けません-インラインスタイリングのみですか?

... いいえ。それを行う方法に関する提案はありますか?iframeなし:)

4

2 に答える 2

2

継承されたスタイルをオーバーライドすることはできますが、適切に機能させるためには、考えられるすべての CSS オプションを上書きし、おそらくそのようなオーバーライドを !important としてマークする必要があります。本当に、iframe はそれを達成するための最良の方法です。別の可能性は静的画像を使用することですまたはフラッシュですが、これも可能なオプションから外れていると思います。

于 2012-12-10T20:14:58.493 に答える
1

次のようなことができます。
スタイルが不要なクラスを追加します。

<img src="deliciousButtons.png" class="no-border"/>

次に、CSSで。

img:not(.no-border) {
    border: 1px solid red;
}

デモ

于 2012-12-10T20:16:22.737 に答える