首页  >  文章  >  web前端  >  为什么我的第 n 个子选择器不能处理社交图标?

为什么我的第 n 个子选择器不能处理社交图标?

Linda Hamilton
Linda Hamilton原创
2024-10-30 10:13:02806浏览

Why Isn't My nth-child Selector Working on Social Icons?

第 n 个子级选择器不起作用:为什么以及如何修复

第 n 个子级选择器是一个强大的工具,用于根据它们在父元素中的位置。然而,有时会令人困惑为什么选择器没有按预期工作。

在提供的代码中,第 n 个子选择器用于将不同的背景图像应用于 #social- 中的社交图标。链接分区尽管存在第 n 个子条件,但所有图标都显示相同。这个问题源于对选择器工作原理的误解。

nth-child 的工作原理

nth-child 选择器对同级元素进行计数,即共享同一父元素的元素。在提供的 HTML 中,每个 div.social-logo 都是其锚点 标记的唯一子级。因此,第 n 个子选择器仅计算一个元素,无论其指定值如何。

但是,#social-links 中的锚标记彼此是同级的。因此,第 n 个子选择器可以使用以下语法有效地定位各个锚标记:

<code class="css">#social-links a:nth-child(1) div
#social-links a:nth-child(2) div
#social-links a:nth-child(3) div</code>

通过定位锚标记而不是 div 子元素,第 n 个子选择器现在可以区分

解决方案

要解决此问题,请将原始的第 n 个子级声明替换为以下内容:

<code class="css">#social-links a:nth-child(1) div {
    background-image: url(...);
}

#social-links a:nth-child(2) div {
    background-image: url(...);
}

#social-links a:nth-child(3) div {
    background-image: url(...);
}</code>

通过定位使用 标签,第 n 个子选择器将按预期正确地将不同的背景图像应用于每个社交图标。

以上是为什么我的第 n 个子选择器不能处理社交图标?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn