CSS allows styling of HTML elements through style rules defined in internal or external style sheets. A style rule has a selector that specifies the element to style and declarations that define the properties and values to apply. External style sheets can control styling across multiple pages by linking the style sheet to each page. Common CSS properties include font, color, size and other text properties that can be applied through class or element selectors to groups of elements.