If you want redesign wikipedia's look or add a skin, here's what I consider to be the basic requirements. Others may want to add to or quibble with these, but I consider them important to the point where I would not be likely to implement anything that violates them:
- All output, both inside the article text and outside, must be fully W3C-compliant HTML 4.0 for now, and XHTML 1.0 at some point in the future.
- Markup should be as economical as possible for performance.
Within the article text itself:
- The text of the article must be rendered as actual text with appropriate semantic labeling, so that it is readable on all browsers, including text-only browsers like Lynx, speech browsers for the blind, etc. The HTML code within the article should be the same on all skins. No visual markup should be used.
- Style elements should be contained in an externally linked stylesheet, using valid CSS (preferably mostly CSS 1, but CSS 2 where the effect can't be achieved otherwise). Styles should be attached to elements within the article based on element classes and unique IDs.
- JavaScript should not be used with the article text.
- Article text must not depend on any system-specific features like non-standard symbol fonts.
- Article text should be in high-contrast colors that are not so overly loud they induce eye strain, and serifed fonts are preferred for readability.
Outside the article text (sidebars, etc.) things can be a bit more relaxed:
- JavaScript can be used for "extra" functionality (like form validations) as long as the site is still usable by those that don't have JavaScript or have it turned off.
- Site should render reasonably on Netscape 4.X, Gecko-based browsers (Mozilla, Netscape 7, Galeon...), KHTML-based browsers (Konqueror, Safari...), MS Internet Explorer 4+, and Lynx. It's OK if some non-vital features won't render on some browsers, especially Netscape 4.X and Lynx, as long as users of those browsers can still view and edit articles and otherwise interact with the site normally.
- Text in sidebars, forms, etc., should be readable but doesn't have to face the same constraints as article text: for example louder colors and sans-serif fonts are fine.