A web style sheet is a form of separation of presentation and content for web design in which the markup of a webpage contains the page’s semantic content and structure, but does not define its visual layout (style). Instead, the style is defined in an external style sheet file using a style sheet language such as CSS or XSLT. This design approach is identified as a “separation” because it largely supersedes the antecedent methodology in which a page’s markup defined both style and structure.
Also see XSL-FO.
Style sheets predate web publishing and were used in proprietary electronic publishing publishing systems in the early 80s.