【问题标题】:Using first-child tag on several p tags?在几个 p 标签上使用第一个子标签?
【发布时间】:2014-08-04 04:57:05
【问题描述】:

我最近接触了 html 和 css,但我不太了解。我在尝试在几个分段链接标签上使用第一个子选择器时遇到了困难。是这样的:
<p><a href="link">text</a></p> <p><a href="link">text</a><p> <p><a href="link">text</a><p>

那么在这种情况下是否可以使用第一个孩子使其仅影响第一段?如果不是,最好的方法是什么?

(对不起我的英语......)

提前致谢!

【问题讨论】:

  • 如果您 (a) 展示您尝试过的 CSS 并 (b) 解释您正在尝试做什么,将会有所帮助。
  • 这还需要有关整个 HTML 页面的信息,因为问题中的第一个 p 元素是否与 :first-child 选择器匹配取决于上下文。
  • :first-child 伪类表示其父元素的第一个子元素。在这种情况下,a:first-child 选择所有 &lt;a&gt; 元素,因为它们是其父 &lt;p&gt; 的第一个子元素。您可能需要 p:first-of-type a 选择器之类的东西来定位第一段的后代链接。 (考虑到段落是兄弟)

标签: html css css-selectors


【解决方案1】:

您可以使用 CSS3 来执行此操作,例如下面的代码来执行您想要执行的操作。

p a {
  color: red;
}
p:first-child a{
  color: blue;
}

然而,这意味着它只能在支持 CSS3 的现代浏览器中运行,例如 IE9+、Chrome、Safari 和 Firefox

这个工作的例子:http://embed.plnkr.co/67O3p6EBS1xmJ8w8m1e1/preview

【讨论】:

  • 这些规则根本不适用于p 元素。它们是否适用于某些p 元素内的某些a 元素取决于未公开的标记上下文。 :first-child 伪元素在 CSS 2.1 中并得到很好的支持。
  • 问题的重点是查看 p 标签并在第一个 p 标签内的 a 标签上设置样式。我没有看到答案的问题?
  • 所问的问题是关于样式p 元素(在问题中称为“标签”)。您可能猜到了真正的目的是什么,尤其是从答案的接受程度来看,但答案仍然没有回答实际提出的问题。它还包含错误信息,并且只要 p 元素在它们之前有任何兄弟(例如,h1),它就无法工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多