CSS 中的 :first-child Selector 可以选择到特定元素的第一组物件(同一个 parent)
HTML
<ul> <li>1</li> <li>2</li> <li>3</li> </ul> <hr> <ul> <li>1</li> <li>2</li> <li>3</li> </ul>
CSS
// 只套用编号 1 的 li
li:first-child {
color: green;
}first-child和:first-of-child的区别
假如我们有这样的一段HTML代码:
<p> <p>第1个元素</p> <h1>第2个元素</h1> <span>第3个元素</span> <span>第4个元素</span> </p>
CSS选择器:
我们要查找其中的元素,如果使用下面的定义方法——
p:first-child 匹配到的是p元素,因为p元素是p的第一个子元素;
h1:first-child 匹配不到任何元素,因为在这里h1是p的第二个子元素,而不是第一个;
span:first-child 匹配不到任何元素,因为在这里两个span元素都不是p的第一个子元素;
:first-child 匹配到的是p元素,因为在这里p的第一个子元素就是p。
上面应用的样式,有两个是匹配不到的,但是别慌张,CSS中还定义了:first-of-child伪类,请看他的用法和讲解:
p:first-of-type 匹配到的是p元素,因为p是p的所有为p的子元素中的第一个,事实上这里也只有一个为p的子元素;
h1:first-of-type 匹配到的是h1元素,因为h1是p的所有为h1的子元素中的第一个,事实上这里也只有一个为h1的子元素;
span:first-of-type 匹配到的是第三个子元素span。这里p有两个为span的子元素,匹配到的是第一个。
:first-of-type 匹配到的是p元素
总结:
:first-child 匹配的是某父元素的第一个子元素,可以说是结构上的第一个子元素。
:first-of-type 匹配的是该类型的第一个,类型是指什么呢,就是冒号前面匹配到的东西,比如 p:first-of-type,就是指所有p元素中的第一个。这里不再是第一个子元素了,只要是该类型元素的第一个就行了,当然这些元素的范围都是 属于同一级的,也就是同辈的。
同样类型的选择器 :last-child 和 :last-of-type、:nth-child(n) 和 :nth-of-type(n) 也可以这样去理解。
IE的兼容型问题
先看如下一段代码,HTML部分:
<ul class="example"> <li>aa</li> <li>bb</li> <li>cc</li> <li>dd</li> </ul>
CSS部分:
.example li{float:left;margin-left:10px;}如果需要将第一个li的margin-left设为0px,则可以通过下面这个方法实现:
.example li{float:left;margin-left:10px;}
.example li:first-child{margin-left:0;}然而,IE6不支持:child-first方法,因此我们需要使用表达式从来实现IE6也支持:child-first,代码如下:
.example li{float:left; margin-left:10px; _margin-left:expression(this.previousSibling==null?'0px':'10px');}
.example li:first-child{margin-left:0;}当然,我们也可以给第一个li添加一个class来重新定义margin-left,如果说是静态页面这样做还可以,如果说程序需要循环输出li的话使用child-first会好些,至少可以使程序少做一条判断。
谷吧美食网还为您提供以下相关内容希望对您有帮助:
css的问题:这里面的first child,last child是什么语法,谢谢。_百度...
这是css3选择器,意思是选择同级的第一个、最后一个,类似的还有"nth-child"。使用这些选择器可以轻松替代原来需要js实现的样式设置,给指定的html元素设置样式。
不明白html 5 的CSS3选择器中的:first-child和:last-child是干什么用的...
//输入ul li:first-child //输入ul li:last-child 刚刚有个这方面的视频,视频的系列名称叫做 《Buid New World》 里面的第八集是讲CSS3 选择器的,有机会看看吧
“html5”的CSS3选择器中“:first-child”和“:last-child”是什么?
dddd .list li:first-child{color:#f00;} //只有aaa变红色 .list li:last-child{font-weight:bold;} //只有dddd变粗体
“html5”的CSS3选择器中“:first-child”和“:last-child”是什么?
选择父级下第一个元素和最后一个元素\x0d\x0a如:\x0d\x0a\x0d\x0aaaaa\x0d\x0abbbb\x0d\x0accccc\x0d\x0adddd\x0d\x0a\x0d\x0a.listli:first-child{color:#f00;}//只有aaa变红色\x0d\x0a.listli:last-child{font-weight:bold;}//只有dddd变粗体 ...
css如何选择同一个class下的第一个div?
.content:first{...} .content:nth-child(1){...} CSS3 :nth-child() 选择器 :nth-child(n) 选择器匹配属于其父元素的第 N 个子元素,不论元素的类型。n 可以是数字、关键词或公式。CSS :first-child 选择器 :first-child 选择器用于选取属于其父元素的首个子元素的指定选择器。
CSS3 怎么分清伪元素和伪类。举例子
伪元素用于将特殊的效果添加到某些选择器。伪类有::first-child ,:link:,vistited,:hover,:active,:focus,:lang 伪元素有::first-line,:first-letter,:before,:after 使用伪类:p>i:first-child {color: red} first second如果我们不使用伪类,而希望达到上述效果,可以这样做:不使...
css3有没有除第一个子元素以外的元素的选择器
”、“:nth-child(n+2)”两种方式。1、:not(:first-child):其中,E:not(s)表示匹配所有不匹配简单选择符s的元素E,E:first-child匹配同级兄弟元素中的第一个E元素。2、:nth-child(n+2):其中nth-child表示第几个son,n+2表示从第二个开始(即所有的n都是取从0开始的自然数)。
html 5 的CSS3新增的伪类选择器还包括哪些?
:last-child p:last-child 选择属于其父元素最后一个子元素每个 元素。:root :root 选择文档的根元素。:empty p:empty 选择没有子元素的每个 元素(包括文本节点)。:target #news:target 选择当前活动的 #news 元素。:enabled input:enabled 选择每个启用的 元素。
CSS3中:first-child和:first-of-child的区别
first-child:父元素的第一个子元素且必须符合指定类型 first-of-type:父元素的符合指定类型的第一个子元素 当然,光看文字也是很难理解的,下面看看例子: 第1行 第2行 第3行 这种情况下,不管是p:first-of-type还是p:first-child,第1行都会被选中。而如果是: 第1行 第2行 第3行 第4...
网页中li 逐次加载显示
这个可以用css3的transition属性来实现,给每个li设置不同的延迟时间即可。例:div{background:blue} div li {color:blue} div li:first-child {transition:color 1s} div:hover li:first-child {color:#fff}