The purpose of present site is to demonstrate how Cascading Style Sheets can be used in scientific web publishing. In particular, site shows how to format mathematical articles with CSS. Style sheets listed here can be used in distant learning projects, web publishing, on math forums and in other cases when one needs to embed mathematical expression in XML. Below are some examples of real mathematical articles formatted with CSS, demo pages that reveal some capabilities of CSS, annotated style sheets and XML DTDs that describe conceptual mathematical markup language that admits universal CSS2.1 based style sheet.
Using CSS one can specify general layout of mathematical articles, perform automated numbering of equations, lists, headers, theorems, propositions, format tables, render mathematical expressions etc. In other words one can control formatting of articles in details. The main advantage of CSS comparing to XSL and DSSSL style languages is its simplicity. It is convenient and widely used. Historically CSS was mainly used to format web pages however as CSS support grows stronger, area of its applications starts to spread beyond webdesign and currently CSS slowly enters into desktop publishing. When it comes to scientific publishing, one nontrivial question emerges: can CSS render complex mathematical expressions? To answer it one has to specify what is CSS and what do we mean by complex expression. At the moment there are three levels (versions with growing capabilities) of CSS: CSS1, CSS2 and CSS3. CSS1 is the simplest style language that can be used to format simple web pages, it is supported by all major browsers, but its capabilities are very far from being sufficient for needs of scientific publishing. CSS2 (2.1) is general purpose style language with more powerful capabilities. It does not contain any mathematics oriented properties, but it turned out that its general, text oriented, visual formatting model is capable to render complex mathematical expressions obtained by combining and nesting subscripts, superscripts, prescripts, under and over scripts, fractions, operators, matrices, vectors, determinants, cases, fences and radicals. Unfortunately CSS2.1 is not fully supported by current browsers, however browser developers claim that they will implement it.
CSS3 is the most powerful version of CSS that currently is under construction, it will contain several modules like math module, advanced layouts, generated content that will significantly boost markup processing and formatting capabilities of CSS and allow us to render even more complex mathematical expressions then we do today. But CSS3 is not the matter of near future (in spite of the fact that some of its parts like selectors and paged media are already supported by some rendering engines). So we will focus on CSS2.1 that is realistic style language expected to gain good browser side support in near future (for some unbounded values of 'near').