私はこのhtmlを持っています:
<div class="image">
<img src=... />
<img src= .../>
</div>
そして、最初のimgにクラスを追加することなく、クラス画像のdivの最初の画像にのみcssを適用します(その場合、そうします.image .img1
が、別の方法はありますか?
助けてくれてどうもありがとう
私はこのhtmlを持っています:
<div class="image">
<img src=... />
<img src= .../>
</div>
そして、最初のimgにクラスを追加することなく、クラス画像のdivの最初の画像にのみcssを適用します(その場合、そうします.image .img1
が、別の方法はありますか?
助けてくれてどうもありがとう
:first-child
セレクターを使用してこれを行うことができます。
使用することもできます:nth-child(1)
(1 は = 最初の子、2 は 2 番目の子など)。
最後に、より適切な方法は、:first-of-type
例えば:
div.image img:first-child {}
または:
div.image img:nth-child(1) {}
または (他の要素がある場合は、<h1>
画像の前にある an を言います:
div img:first-of-type
次のように、内部に画像が含まれるクラス画像を含む div と、画像が含まれる別の div を持つ可能性がある場合:
HTML:
<div class="image">
<img src=... />
<img src= .../>
<div class="image">
<img src=... />
<img src= .../>
</div>
</div>
次に、これらのセレクターを使用します。
例えば:
div.image > img:first-child {}
または:
div.image > img:nth-child(1) {}
または:
div > img:first-of-type
:first-childと:nth-child()、:first-of-typeと子コンビネータに関するドキュメント。
:nth-child()
および:first-of-type
は CSS3 セレクターであり、IE を使用する場合はサポートが限定されていることに注意してください。ブラウザー サポートの詳細については、CSS3 セレクターを使用できますか を参照してください。
IE の標準化に役立つSelectivizrのようなものを検討してください。
first-child
セレクターを使用してそれを行うことができます
.image img:first-child
{
height:500px;
width:200px;
border:15px solid Red;
}
「:first-child」セレクターは、必要なもののようです。
DIV 内の最初の画像が必要な場合 (およびその前に他の要素が存在する可能性がある場合) first-of-type
、first-child
div > img:first-of-type {}
次のhtmlを検討してください
<div>
<p>paragraph, this is :first-child</p>
<img src="..."><!-- this is img:first-of-type -->
</div>
詳細については、https://developer.mozilla.org/en-US/docs/CSS/:first-of-typeを参照してください。