4

ユーザーが独自のHTML応答を挿入できるアプリを継承しました。このアプリには、グローバルCSSファイルとグローバルJSファイルしか設定できません。<marquee>最近、一部のユーザーは、<blink>タグとして知られる古代の悪を目覚めさせました。

入力または出力でタグを取り除くことはできませんが、少なくともCSSルールでタグを解除できますか?

blink {
    text-decoration: none;
}

上記は点滅効果を取り除きますが、CSSでマーキー効果を無効にする同様の方法はありますか?

最悪の事態が発生した場合、私はを使用できますmarquee { display:none }が、ユーザーがそのタグに有用な情報を入れることがあります。「マーキーの場合、定義上重要ではない」と主張するのに十分なレバレッジがありません(これは他の場所では十分な近似値です)。

それとも、技術的な手段で非技術的な問題を解決しようとしていますか?呼び出されてはならない悪について(内部の)ユーザーを教育する必要がありますか?


結局のところ、CSSのみのクロスブラウザソリューションはありません。私はもっ​​と難しいJSのやり方をしなければならないでしょう-おそらくマーキーをスパンに置き換えてください。

4

2 に答える 2

5

これはうまくいきますか?

marquee { overflow:visible; -moz-binding:none; }

詳細については、css を使用して非推奨の html を無効にするをご覧ください。

于 2009-06-07T19:14:55.793 に答える
4

そのためのCSSのみのクロスブラウザソリューションはありません。関連するプロパティは、CSS3で最初に導入されました。一部のユーザーエージェントはすでにそれを実装している可能性があります。たとえば、Webkitでは-webkit-marquee*プロパティを使用できます。Geckoでは-moz-binding: none、本来の目的は異なりますが、設定も機能します。

それ以外marqueeの場合は、すべてを非表示にすると、その要素が機能しなくなったため、ユーザーはその要素を使用しないことを示します。

とにかく、marqueeDOMspanのすべての要素をJavaScriptに置き換えることができます。

于 2009-06-07T18:40:06.580 に答える