Pseudo elements and pseudo selectors in CSS can be differentiated by using varying numbers of : (colons), as indicated in the related CSS3 specification module.
Regular expression for identifying potential single colon usages, like :after and :before:
([^:])(:{1})(\bafter|before\b)
Replace with these three matched values, inserting an additional colon:
$1: $2$3;
The regular expression could be extended by adding all the pseudo elements defined in the specification, such as ::first-line and ::first-letter.
Essentially making this change will drop support for IE8, as can be seen via the browser support table at the Mozilla Developer site.
