:first-of-type CSS pseudo-classThe :first-of-type CSS pseudo-class represents the first element of its type (tag name) among a group of sibling elements.
dt {
font-weight: bold;
}
dd {
margin: 3px;
}
dd:first-of-type {
border: 2px solid orange;
}<dl>
<dt>Vegetables:</dt>
<dd>1. Tomatoes</dd>
<dd>2. Cucumbers</dd>
<dd>3. Mushrooms</dd>
<dt>Fruits:</dt>
<dd>4. Apples</dd>
<dd>5. Mangos</dd>
<dd>6. Pears</dd>
<dd>7. Oranges</dd>
</dl>:first-of-type {
/* ... */
}<h2>Heading</h2>
<p>Paragraph 1</p>
<p>Paragraph 2</p>p:first-of-type {
color: red;
font-style: italic;
}This example shows how nested elements can also be targeted. Note that the universal selector (*) is implied when no type selector is written.
<article>
<div>This `div` is first!</div>
<div>This <span>nested `span` is first</span>!</div>
<div>
This <em>nested `em` is first</em>, but this <em>nested `em` is last</em>!
</div>
<div>This <span>nested `span` gets styled</span>!</div>
<p>This `p` qualifies!</p>
<div>This is the final `div`.</div>
</article>article :first-of-type {
background-color: pink;
}