Say we have html structure like this:
<div id="parent"> <h1></h1> <p></p> <p></p> </div>
What would this selector have selected?
#parent{
  p:first-child{}
}
Interestingly: nothing.
The selector above doesn’t mean “select the first p tag under #parent div”, but “select the first child under #parent div, if it’s a p tag”. And the description doesn’t fit anything. If we want to select the first p tag under a div, we might as well write this if we know the index:
#parent{
  >:nth-child(2){}
  p:nth-child(2){}
}
Or simply wrap all the p tags in a parent div of their own.
Weird behaviour of CSS selectors, to be paid attention to.
