-2
<div><img class="imgClose"></div>

このように追加しようとしましたが、画像が表示されません:

<style type="text/css">
.imgClose
{
   float: right;
   margin-top: -15px;
   background: 16px 16px no-repeat url(_assets/img/close.png);
}
</style>

srcHTMLを追加すると機能しますが、代わりにinstyleクラスを配置したいと思います。

<div><img class="imgClose" src="_assets/img/close.png"></div>
4

4 に答える 4

2

src要素のスタイルから要素のプロパティ(など)を追加することはできません。

于 2012-05-14T17:23:25.073 に答える
1

.imgClose を正しく表示するには、高さと幅が必要です...

srcを画像に入れると、divはそれらを自動的に取得します。それが問題です:)

于 2012-05-14T17:25:30.163 に答える
0

これはとにかく検証に失敗します。画像タグにはsrc属性が必要です。空のdivを追加して画像を背景画像として適用するか、画像タグが必要な場合は、透明なプレースホルダー画像を追加して、そのサイズと背景画像をcssで定義できます。また、要素がまだダウンロードされていない場合でもブラウザがページをレンダリングできるように、画像に寸法を追加することをお勧めします。

しかし、本当の問題は、なぜそれをしたいのかということです。

画像が純粋に装飾的なものである場合は、背景画像として追加できます。HTMLで重要な場合は、src属性を持つ画像タグとして残します。

私はあなたが閉じるボタンウィジェットのようなものを作成したいと思います。テキストコンテンツを含むリンク要素を追加し、cssとテキスト置換を使用してスタイルを設定する方がよい場合があります。

<a href="whatever" class="close-widgety-thingy">close the widget thing</a>

そしてcssで

.close-widgety-thingy {
   text-indent: -12345em;
   width: 16px;
   height: 16px;
   background: transparent url(path/to/close/image.png) no-repeat center center;
}

それはあなたが達成したいことですか?

于 2012-05-14T19:00:31.983 に答える
-1

の背景を正しく機能させるには、属性を指定せずwidthに 、height、およびを指定する必要があります。ただし、要素は属性を使用するためのものであるため、別の要素の使用をお勧めします。display:inline-block|block;imgsrcimgsrc

<style type="text/css">
.imgClose {
 display:block;
 width:16px;
 height:16px;
 float: right;
 margin-top: -15px;
 background: 16px 16px no-repeat url(_assets/img/close.png);
}
</style>
于 2012-05-14T17:28:26.083 に答える