Links can exist in four states - unvisited, visited, hover, and active. There are pseudo-class selectors that correspond to each state - a:link, a:visited, a:hover, and a:active - which must be used in that specific order. These selectors can be used to style each link state differently by applying different colors or other CSS properties to each pseudo-class. Class selectors can also be used to differentiate between types of links, like internal versus external links, and apply customized styling.