CSS 伪类 :first-of-type表示一组兄弟元素中其类型的第一个元素。

/* 选择在父元素中第一个出现的<p>,而不管其在兄弟内的位置如何 */
p:first-of-type {
  color: red;
}

注意:按原来定义,所选元素必须有一个父元素。 从 Selectors Level 4 开始,就不需要这样了。

语法

:first-of-type

例子

装饰第一个段落

HTML

<h2>Heading</h2>
<p>Paragraph 1</p>
<p>Paragraph 1</p>

CSS

p:first-of-type {
  color: red;
  font-style: italic;
}

结果

嵌套元素

下面这个例子展示了如何选中多层嵌套元素。注意当不存在简单选择器时,通配符(*)是默认应用的。 

HTML

<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>
  <b>This `b` qualifies!</b>
  <div>This is the final `div`.</div>
</article>

CSS

article :first-of-type {
  background-color: pink;
}

结果

规范

Specification Status Comment
Selectors Level 4
:first-of-type
Working Draft Matching elements are not required to have a parent.
Selectors Level 3
:first-of-type
Recommendation Initial definition.

浏览器兼容

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
:first-of-typeChrome Full support 1Edge Full support 12Firefox Full support 3.5IE Full support 9Opera Full support 9.5Safari Full support 3.2WebView Android Full support 2Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 10.1Safari iOS Full support 3.2Samsung Internet Android ?

Legend

Full support  
Full support
Compatibility unknown  
Compatibility unknown

相关知识

文档标签和贡献者

最后编辑者: Ende93,