如何以不同的方式设置每行/行的每个最后一个元素的样式



我一直在尝试使用

display:inline=block

我需要以不同的方式设置每行/行的每个最后一个元素的样式。我试过了

nth-child
nth-of-type

但是,当我使用它时,它会与我的其他网格混淆。那么如何在不添加新类的情况下做到这一点呢?

据我从你的代码中看到,你不能使用第 n 个孩子来实现你的目标。我将尝试用一个例子来解释:您希望部分类="四"的第 4 和第 8 个子项显示为红色。为了使用第 n 个子项或第 n 个类型,您必须引用从其父项开始的子项,即 body。所以很难说身体的孩子列表中有多少是部分class="four"的第4和第8个孩子,而且一点也不灵活。我认为你以错误的方式使用它,比如 section.four:last-child,这是不正确的。请检查:w3schools链接

此外,第 n 个子级和第 n 个类型不能与选择器一起使用,而只能与元素一起使用,因此无法执行类似 .four:nth-child 的操作(如果您在部分外使用 class="four" 制作div)。

所以不添加更多类的唯一方法是jquery,如下所示:

$('.four').last().css('background-color', 'red');

在 CSS3 中,如果将每个第 n 个子类与某种类型的类相关联,并且每个第 n 个类型与另一个类相关联,则可以以不同的方式设置每个子类的样式。例如

<html>
<div class="nth-child"> 
   //some code
</div>
<div class="nth-of-type">
 //some code
</div>
</html>

然后在您的CSS文件中,您将执行类似此操作的操作:

.nth-child
{
  //style rules
}
.nth-of-type
{
//style rules
}

我希望这就是你要找的,如果没有发布的例子,有点难以理解你的确切意思。但是如果你想让我们JS为此,那么你将创建一个JS函数使用 "var elements= document.getElementsByClassName("nth-child")" 获取页面中的所有元素您将遍历"elements.length",将每个元素样式设置为"none"

最新更新