So I read the docs and probably understand the purpose of ::before and ::after. If my understanding is correct, they should always work in combinat
I assume you are seeing that, because chrome inspector shows it for inspection: http://www.youtube.com/watch?v=AcKlJbmuxKo
They are actually not in the original html served from the server but, added by Chrome Inspector there only.
You can use those to view their box model on screen and the styles declared for them.
Also check this: https://stackoverflow.com/a/19978698/774086