首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

last-child()和:在IE 8中不工作之后

last-child() 和 : 在 IE 8 中不工作之后

在 Internet Explorer 8(IE8)中,last-child() 属性以及 :last-child 选择器不支持。这导致了一些开发者对这种属性或选择器的有效性感到困惑。在本文中,我们将讨论 last-child():last-child 在不同浏览器中的支持情况,并分享如何在不同场景下使用替代方案。

last-child()

last-child() 属性是 CSS 中用于选择指定元素的最后子元素的方法。例如,给定一个 HTML 结构:

代码语言:html
复制
<div class="parent">
  <p>A paragraph</p>
  <p>Another paragraph</p>
</div>

使用 last-child() 属性可以选择 .parent 元素的最后子元素,即第二个 <p> 元素:

代码语言:css
复制
.parent {
  last-child: second-child;
}

然而,问题在于 IE8 不支持 last-child() 属性。在这种情况下,开发者可以尝试使用其他选择器或属性来达到相同的效果。

:last-child

虽然 IE8 不支持 :last-child 选择器,但我们可以使用 :last 选择器。它能够选择列表中的最后一个元素,即使该元素不是父元素的最后子元素。例如:

代码语言:css
复制
.parent > p:last {
  color: red;
}

这个选择器会将父元素中最后一个 <p> 元素的字体颜色设置为红色。在 IE8 中,它仍然有效。

替代方案

如果需要兼容 IE8,可以使用 :last 选择器作为替代方案。另外,还可以使用 JavaScript(如 jQuery)来选取元素的最后一个子元素。

总结

虽然 IE8 不支持 last-child() 属性,但使用 :last-child 选择器或 JavaScript 解决方案可以帮助开发者实现类似的功能。在其他现代浏览器中,last-child() 属性仍然是一个有效的方法。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

IE6已逝,遗忘角落的选择器,赶快用起来

那些被遗忘的选择器 IE6~8“统治”网络世界的时代,CSS2版本曾经推出过几种选择器,而这几种选择器由于对IE6支持程度较差,使得前端开发工程师不得不将其舍弃。...,但是请务必注意::first-child:last-child并非“师出同门”。...:first-child是CSS2版本时代提出的伪类选择器,得到了IE7及IE7以上的各个主流浏览器的支持; :last-child是CSS3版本时代提出的伪类选择器,得到了IE9及IE9以上的各个主流浏览器的支持...当IE6逝去,IE8还“苟延残喘”之时,:last-child这种CSS3选择器还不能够PC平台施展拳脚。...兄弟选择器语法 E ~ F {/* 样式代码 */} 代码含义:匹配任何在E元素之后的同级F元素。

65890

CSS选择器 低版本IE浏览器的兼容

CSS 后代选择器很好用,让我们的工作变的更方便。但是 IE8 及以下对很多后代选择器并不兼容。...例如这6个比较常用的后代选择器: Child Selectors IE9 IE8 IE7 :first-child √ √ √ :last-child √ × × :nth-child(n) √ ×...一种方法是通过 js 把最后最后一项的边框值去掉,达到 last-child 的目的: if ($('html').hasClass('lt-ie9')) {     $('[data-fix-last-child...因为 last-child 元素是没有紧跟这的元素的, element+element 为CSS2选择器。...举个栗子: 我们希望每条记录之间加上分隔符,一般会加 border-bottom 属性,但是最后一个 下面不能有,我们可以使用 li+li 选择符,改用 border-top 属性即可实现。

2.4K11

毕业一年左右的 前端 妹子 面经总结

准备工作要做好,我是因为才去年毕业啦,所以集中准备基础知识目前在用的VUE框架这两块啦,其他的知识点我平时撸代码的时候都有在做笔记,所以都会扫一遍知识点,其他的你实际工作中没有用到的但是比较流行的也不能忽略哦...面试知识点 面两个大公司一个小公司的时候,尤其是一个传统行业的大型公司时,也有可能是我年限的问题,尤其注意基础,无论是笔试还是技术主管面试的时候都集中在这块,像原生JS、原生Ajax等,,(这些虽然我在工作中用的也不是很多...浏览器兼容性问题 因为我的工作主要还在专注web端,所以浏览器兼容性的问题没有少碰到过,因主要是兼容IE8以上以及其他各个浏览器,这个就当做总结一下吧(在被问到这一块的时候其实我是有加分的,因为回答的比较多.../safari -moz gecko引擎 firefox -ms- trident渲染引擎 IE -o- opeck渲染引擎 opera 过渡兼容IE8,可以用JS动画实现 background-size...margin不一致的问题,解决方法就是给图片添加diaplay:inline即可 ie8不支持nth-child,但支持first-childlast-child,可以通过转化写法来处理问题,span

49920

CSS 中最后一行中元素如何向左对齐

子元素宽度固定 如果每一个子元素宽度固定,那最后一行如何实现左对齐呢,有以下两种方法。 1. 弹性布局,两边对齐,最后一个元素的右边距设置为自动。...每行列数固定 如果每一行列数固定,那最后一行如何实现左对齐呢,有以下两种方法。 1. 使用足够的空白标签进行填充占位,具体的占位数量是由最多列数的个数决定的,一行最多几列,就用几个空白标签。...占位的元素的 width margin 设置得子元素一样即可,其他样式都不需要写。由于占位元素高度为0,因此,并不会影响垂直方向上的布局呈现。...使用格子布局,有天然的间隙对齐排布,因此,实现最后一行左对齐可以认为是天生的效果。...100px; height:100px; background-color: blue; } 格子布局需然很爽,但是 repeat() 函数有一定兼容性要求,IE

1.9K10

【CSS】636- 你必须记住的30个css选择器

web设计者经常用它将页面中所有元素的marginpadding设置为0。*选择符也可以子选择器中使用。...除非必要,我建议页面中过的的使用星状选择符,因为他的作用域太大,相当耗浏览器资源。 兼容浏览器:IE6+、Firefox、Chrome、Safari、Opera 2....X:afterX:before 这两个伪类与content结合用于元素的前面或者后面追加内容,看一个简单的例子: h1:after {content:url(/i/logo.gif)} 上面的代码实现了...需要注意的是,ie 6中,:hover只能用于链接元素。 这里分享一个经验,设定链接划过时出现下滑线时,使用border-bottom会比text-decoration显得更漂亮些。...如上图所示,唯一的问题是,边框将被应用到无序列表的顶部底部-看起来很奇怪。让我们使用:first-child:last-child伪类来解决此问题。

85330

【CSS】364- 让CSS flex布局最后一行左对齐的N种方法

方法一:模拟space-between间隙 也就是我们不使用justify-content:space-between声明模拟两端对齐效果。中间的gap间隙我们使用margin进行控制。...例如: .list:last-child:nth-child(4n - 1)说明最后一行,要么3个元素,要么7个元素…… .list:last-child:nth-child(4n - 2)说明最后一行...大小设置得.list列表元素一样即可,其他样式都不需要写。...如果项目需要兼容IE,则此方法需要斟酌。 然后,适用范围最广的方法是使用空的元素进行占位,此方法不仅适用于列表个数固定的场景,对于列表个数固定的场景也可以使用这个方法。...如果你有其他更好的实现,也欢迎反馈与交流,我会及时文中更新。

7.8K62

【CSS3】CSS3 3D 转换示例 - 盒子模型翻转示例 ( 开启透视视图 | 设置过渡动画 | 设置 3D 呈现样式 | 鼠标移动到控件上方效果 | 设置两个子盒子模型背靠背效果 )

这个距离会影响 3D 转换元素的视觉效果 , 具体效果就是 " 近小远大 " ; 如果设置 透视视图效果 , 那么 整个 三维空间 中 , 不管多远 , 显示的 标签盒子 大小都一样 ; 设置过渡动画...first-child { /* 使用绝对定位 */ position: absolute; } .box div:last-child...user-scalable=no,maximum-scale=1.0,minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="<em>ie</em>...*/ /* z-index: 1; */ } .box div:<em>last-child</em> { /* 使用绝对定位...>正面 背面 展示效果 默认的 正面 显示效果 : 鼠标移动到 盒子模型 上<em>之后</em> , 会 绕

12700

这30个CSS选择器,你必须熟记(下)

为了兼容现有的样式标准,CSS1CSS2里使用单冒号来表示伪元素(比如:first-line,:first-letter,:before:after) 浏览器兼容性 IE6+ Firefox Chrome...这样的话第一个最后一个元素并不需要这么设置区分分割线。我们会通过给第一个最后一个元素添加样式来解决。稍后我会给到示例。...X:last-child:最后一个子元素选择器 有第一个子元素选择器,自然会有最后一个子元素选择器,示例代码如下: ul > li:last-child { color: green; } 比如下面一个例子...方案2 : 使用紧邻同胞选择器 p + ul li:last-child { font-weight: bold; } 上述代码先找到紧跟在p后面的ul,然后找到li序列的最后的元素。...,实际中去理解运用,印象才能深刻。

53720

css3 选择器

CSS3新增加一种选择器,这种选择器将选择某元素后面的所有兄弟元素,他们也相邻兄弟元素类似,需要在同一个父元素之中,换句话说,EF元素是属于同一父元素之内,并且F元素E元素之后,那么E ~ F 选择器将选择中所有...这个逗号告诉浏览器,规则中包含多个不同的选择器,如果有这个逗号,那么所表达的意就完全不同了,省去逗号就成了我们前面所说的后代选择器,这一点大家使用中千万要小心加小心。...对于:hoverIE6下只有a元素支持,:active只有IE7-6不支持,:focusIE6-7下不被支持。...同样IE6-8FF3.0-浏览器不支持“:nth-last-child()”选择器。...; IE6-8FF3.0-浏览器不支持:only-of-type选择器。

51610

css选择器攻略

,e~f 之后的所有,卡可以选择多个;后面三个兼容ie7+ 目标伪类选择器 e:target 针对连接到的部分,兼容ie9+ 动态伪类 :linked,:visited,:active,:hover...,:focus 其中activefocus 兼容8+支持 语言伪类 :lang(en)可以针对不同语言,兼容ie8+ ui元素状态伪类 :checked,:enabled,:disabled ,...兼容ie9+ 结构伪类 数量最多的一类,:first-child(css2),:last-child(css3),nth-child(n)筛选第几个,nth-last-child,nth-of-type...(n),:root,:only-child,:empty ,等,兼容ie9+ 否定伪类 :not() 针对性排除,兼容ie9+ 伪元素 伪元素新的规范中为双冒号,为了区别伪类,ie6-8只识别单冒号...整体建议还是不要为了使用新的选择器而使用,要找到对应的使用场景,多使用基本选择器能避免低版本ie的适配问题。 使用适配的脚本文件,实现让ie6-8ie6-8支持属性选择器,伪类选择器伪元素。

1.1K30

这30个CSS选择器,你必须熟记(下)

为了兼容现有的样式标准,CSS1CSS2里使用单冒号来表示伪元素(比如:first-line,:first-letter,:before:after) 浏览器兼容性 IE6 Firefox Chrome...这样的话第一个最后一个元素并不需要这么设置区分分割线。 我们会通过给第一个最后一个元素添加样式来解决。稍后我会给到示例。...X:last-child:最后一个子元素选择器 有第一个子元素选择器,自然会有最后一个子元素选择器,示例代码如下: ul > li:last-child { color: green; } 比如下面一个例子...方案2 : 使用紧邻同胞选择器 p + ul li:last-child { font-weight: bold; } 上述代码先找到紧跟在p后面的ul,然后找到li序列的最后的元素。...,实际中去理解运用,印象才能深刻。

70700

从零开始学 Web 之 CSS3(一)CSS3概述,选择器

E:last-child :查找E元素的父元素中最后一个指定类型的子元素 /*下面这句样式查找:li的父元素中的第一个li元素 1.相对于当前指定元素的父元素 2.查找的类型必须是指定的类型*/ li:...first-child{ color: red; } li:last-child{ background-color: skyblue; } 注意:查找的时候并不会限制查找的元素的类型,也就是如果第一个元素不是...必须添加 content , 哪怕设置内容,也需要content:"",否则不会起作用。...E::before:定义一个元素的内容之前插入 content 属性定义的内容与样式。 E::after:定义一个元素的内容之后插入 content 属性定义的内容与样式。...注意: IE6、IE7与IE8(怪异模式Quirks mode)不支持此伪元素 CSS2中 E:before或者E:after,是属于伪类的,并且没有伪元素的概念,CSS3中 提出伪元素的概念 E:

71130

【CSS3】CSS3 3D 转换 ⑤ ( 3D 呈现效果 - transform-style 属性 | transform-style 属性语法 | 设置 透视视图 效果 | 结构伪类选择器 )

transform-style 属性语法 父盒子 中 如果有 子盒子 , 假如 父盒子 有 3D 变换 的 效果 , 那么子盒子的 3D 效果 则需要使用 特殊的属性 transform-style 进行设置 ; ...CSS3 样式中 , 使用 transform-style 属性 定义 3D 空间 中呈现 被 3D 转换的 父元素元素 的 子元素 是否继承 父容器的 3D 变换效果 ; transform-style...{ /* 设置透视视图效果 */ perspective: 500px; } 设置后的效果如下 : 设置 父容器 3D 呈现效果 ...选择器 | E:nth-child(n) 选择器 | E:nth-of-type 选择器 ) 博客 , 选择 .box 类标签下的 第二个 div 子盒子 , 可以使用 .box div:last-child...user-scalable=no,maximum-scale=1.0,minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="<em>ie</em>

22110
领券