Pause: Play: Arrow:
The CSS trick here is to use the 2 pseudo elements named
They cannot be defined in the html but only using CSS rules. Here all sizes are based on
em to allow
using them inline.
The pause button is the simplest here. It defines a absolute positioned rectangular element at position 0,0 and another one a 0.5em to the right.
The play button is using a zero-sized element with a border on 2 sides. Without rotation this looks like but with some rotation and scaling (1/sqrt(2)) it works inline. .
The arrow button is combining both. The block in the
::before element is rotated with the main
element and must be rotated back.
You ma find examples with a single colon notation like
:after. This still works in current browsers
but CSS3 defined the double colon notation like
::after for pseudo elements and use the single colon
notation for pseudo-classes like