Issue
It says the difference is that :after is CSS2, while ::after is CSS3. Are there any more important differences?
(I've tried Googling, but the colons seem to throw off the search)
Solution
Pseudo-elements were denoted with a single colon in CSS2, but have been changed in CSS3 "in order to establish a discrimination between pseudo-classes and pseudo-elements". For compatibility reasons a single colon is still allowed for the pseudo-elements defined in CSS 1 and CSS2.
CSS2
5.12.3 The :before and :after pseudo-elements
The ':before' and ':after' pseudo-elements can be used to insert generated content before or after an element's content.
CSS3
7. Pseudo-elements
[...]
A pseudo-element is made of two colons (
::
) followed by the name of the pseudo-element.This
::
notation is introduced by the current document in order to establish a discrimination between pseudo-classes and pseudo-elements. For compatibility with existing style sheets, user agents must also accept the previous one-colon notation for pseudo-elements introduced in CSS levels 1 and 2 (namely, :first-line, :first-letter, :before and :after). This compatibility is not allowed for the new pseudo-elements introduced in this specification.
Answered By - Zeta
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.