Cascading Style Sheets or CSS were developed a few years ago to define the look and feel of markup languages. Extensible Style Sheet Language for Transformations or XSLT were created to transform documents. They are both style sheets, but they serve vastly different purposes.
What CSS Can Do
- Modify the font size, color, family, and style of text in markup
- Define the location and size of an element
- Change the background image and color of elements
- Create a new look and feel for markup pages to display on the Web
What CSS Cannot Do
XSLT is a powerful language for transforming documents. It was created to allow developers the ability to create data and then transform it to various different formats. It is meant to keep the distinction between content and design separate.
What XSLT Can Do
If all you're looking for is a style sheet to manipulate the way your content looks in a document, then you should use CSS. But if you're looking to actually transform one document into another, then XSLT is your tool.