2017-07-05 11 views
0

上記のコードを使用して、各PDFファイルをダウンロードする前にpdfアイコンを表示します。表示:クラスに画像がない場合

a[href*="pdf"]::before { 
    content: url('../gfx/pdficon.png'); 
    display: inline-block; 
    vertical-align: middle; 
    padding-right: 5px; 
} 

このアイコンが必要ないimgのようなオブジェクトにアイコンが表示されると問題が発生します。 このアイコンが表示されないように画像に追加するためのクラス「nopdf」を作成するというアイデアを思いつきました。

どのように私はCSSでそれを適用できますか?私は "display:none"には十分だと思いますが、この場合はルールcssをどのように構築するのですか?

EDIT:画像に(href)をリンクするときに問題が発生します。その後、画像の前にpdfアイコンが表示されます。

+1

が、あなたが唯一のPDFファイルに追加した代わりに、クラス「PDF」を作成する方が簡単ではないでしょうか? – Esko

+0

あなたのセレクタが 'a [href * =" pdf "]'であるときにアイコンが 'img'sに表示されるのはなぜですか?これは' a'sのみに適用されることを意味しますか? –

+1

私は彼がタグの中のimgタグを意味すると思います – lumio

答えて

0
a.nopdf::before { 
    display: none !important; 
} 

またはあなたがちょうどそうのようなあなたの既存のルールを拡張:

a[href*="pdf"]:not(.nopdf)::before { 
    content: url('../gfx/pdficon.png'); 
    display: inline-block; 
    vertical-align: middle; 
    padding-right: 5px; 
} 
+0

動作しません。上記の私のコメントをチェックしてください。 – Pat

+0

正確には何が動作しないのですか?これらの2つのソリューションの1つ?または両方のソリューション?あなたのHTMLはどのように見えますか? – lumio

+0

両方のソリューション。それはワードプレスです、ここでコードの外観を見ることができます。https://s10.postimg.org/9xwajsovt/code.png – Pat

関連する問題