MathML will support fancier equations (in browsers, @ least). MathJax does it now, as javascript. To get any of the fancier stuff (big integral signs, etc.) to work, you need new fonts. For now, these either have to be installed (most readers won't) or repeatedly downloaded by the browser (slowing things down; not enormously, but even a few seconds is considered slow by today's standards). This is the best way to go if you need sophisticated math, but simpler stuff (symbols, sub/superscripts) can do without it, & is easier to proofread (mostly WYSIWYG, not TeX).
Greek: ΓΔΘΛΞΠΣΥΦΨΩαβγδεζηθικλμνξπρστυφχψωϑϖ
Accented, e.g.: čç
Combining accents: ὰάα̂α̃ᾱα̈ᾰα̇α̊α̌α̸α̅
Arrows: ←↑→↓↔↕⇐⇔⇒⇑⇓
Math: ℏħ◻∂∇∏∑∫∮√∞±∓∙×∈⊂∼≃≅≈≠≡≤≥≦≧≪≫⊕⊗½⅓¼
Misc: 〈 〉†‡★☺☻
Actually, Unicode is mostly about languages, but you get the math for free. You may have to use an appropriate font, that has all the characters, especially the combining accents; e.g., Lucida Grande (Mac)/Lucida Sans Unicode (MS Windows) seems to have almost everything.
HTML also has the <sub> & <sup> tags. Between using the right characters, and subscripts & superscripts, you have almost everything you need for basic math.
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
right after the <head> tag at the top of your web page. (Alternatively, you can type in character codes for each symbol, but this page is about avoiding that: see below.)
There are some things that aren't individual symbols, accents, subscripts or superscripts. Also, some combining accents appear too low, so α̇ (α-dot) is legible but β̇ (β-dot) isn't. There are several ways to put things on top of each other, for fractions and mathematical accents, but among different browsers most work nonuniformly (because of different ideas on how spacing should be implemented), or not at all (because they are recent standards). The best way would be "display:inline-block", which works poorly on Internet Explorer (for Windows) and even worse on Firefox, or "inline-table", which doesn't exist on Explorer. Another way would be to use "position:absolute", whose exact position varies among browsers, and is particularly far from the rest for Opera. "Line-height" also varies among browsers, and sometimes makes pieces of things disappear.
This seems to work pretty well for the latest versions of all still-supported major browsers: Safari (& other WebKit-based browsers like OmniWeb, Shiira, iCab, etc.), Firefox (& other Gecko-based browsers like Camino, Mozilla Seamonkey, ...), Opera, and Internet Explorer (on Windows). (Even looks good on Konqueror.)
For example, for fractions,
How much isgives
<table style="display:inline; text-align: center; vertical-align:middle">
<tr><td>α+β</td></tr>
<tr><td style="border-top:solid 2px">4π</td></tr>
</table> ?
| α+β |
| 4π |
while for accents and delimiters,
a<table style="display:inline; text-align: center;gives
vertical-align:text-bottom" cellspacing=0 cellpadding=0><tr><td>
<small style="position:relative; bottom:-1.4ex">→</small><br>
x</td></tr></table><sup>2</sup>
+
a<table style="display:inline; text-align: center;
vertical-align:text-bottom" cellspacing=0 cellpadding=0><tr><td>
<span style="font-size:22px; position:relative; bottom:-1.6ex">˙</span><br>
β</td></tr></table><sup>2</sup>
+
<table style="display:inline; text-align: center; position:relative;
bottom:-2.3ex; line-height: 100%"><tr>
<td><small>∞</small><br>∑<br><small>n=1</small></td>
</tr></table>x = 5
|
→ x |
|
˙ β |
| ∞ ∑ n=1 |
<span style="text-decoration:overline">Λ</span>
gives
vs. Λ̄ (cf. x̄ and x). Overlines are also good for completing square roots: e.g.,
√<span style="text-decoration:overline">-(dX∧dX)²</span>
gives
To make it even easier yet, I made a "keybord layout" for Mac OS X that allows you to type all the Greek and more useful math characters directly from the keyboard using the Option key (e.g., Option-a for α). (Actually, I already made a TrueType font that lets me do that, but nobody can read that unless they have the font, and can read Mac OS Roman encoding, whereas anybody can read Unicode with the standard fonts.) It installs in /Library/Keyboard Layouts (or ~/Library/...). I created it with this web program. (See this Apple technical note for more info.) There is also the program Ukelele.
Something similar can be done for XWindows, by running the command xmodmap (by hand or in your .xinitrc) on a file created by xmodmap -pke and edited according to codes given in (on my machine) /usr/X11R6/include/X11/keysymdef.h, but it doesn't seem possible to get quite all the Unicode characters I would want (e.g., ↔⊕⊗∓〈〉⇐∑∏∈∮×≪≫). You can also install the program xkeycaps, which does the same with a nice GUI.
For MS Windows there is Microsoft Keyboard Layout Creator. See also this list of links for other tools for all operating systems.
For Mac OS X Snow Leopard another alternative is to use the menu item Edit>Substitutions>Text Replacement, after making some definitions in System Preferences>Language & Text>Text. Then you can make your own abbreviation for a symbol, & it's automatically replaced. (E.g. \a might get converted into α.) For other systems there exist programs to do the same.