Why Doesn't Nth-of-type Work On An Image Wrapped In An A Tag?
Solution 1:
Why doesn't
:nth-of-type()work on an image wrapped in an<a>tag?
It would, but since you're using :nth-child(), and not :nth-of-type(), I'll address that instead (though the answer is pretty much the same, regardless).
The problem you're facing is that your selector is selecting the wrong element, because the <img> elements within .group3 are individually wrapped in <a> elements, so img:nth-child(2) can't match anything; had you tried img:nth-child(1), or img:first-child, you'd see that both <img> elements would have been successfully selected because they're both :nth-child(1) and :first-child within their respective parents.
So, to select the second <img> element that appears within .group3, we need to select via its parent, the <a>:
.row3a:nth-child(2) img {
border: 1px solid green;
}
It's important to note that :nth-child() does precisely what it tells you it does (in its very name); it selects an <img> element if it is the :nth-child() of its parent. As all the <img> elements are individually wrapped in <a> elements, none of those <img> elements can be matched.
That means to select the second <img> we need to select the only image (or potentially all the images), that are held within the actual second-child of the .row3 element, which is the <a>.
References:
Post a Comment for "Why Doesn't Nth-of-type Work On An Image Wrapped In An A Tag?"