
*::before, *::after {
  color:red;
}
.test::before{
  margin: 3px;
}
p::first-letter , p::first-line {
  foo: 1;
}
::selection {
    width: 0
}
/*
because of IE6 first-letter and first-line
must be followed by a space
http://reference.sitepoint.com/css/pseudoelement-firstletter
Thanks: P.Sorokin comment at http://www.phpied.com/cssmin-js/
*/
p:first-letter{
  buh: hum;
}
p:FIRST-LINE{
  baa: 1;
}

p:first-line,a,p:first-letter,b{
  color: red;
}
 ::before,  p ::after {
  margin: 0px;
}
.foo  :after {
  color: red;
}