<p>How would you programmacially abbreviate <code>XHTML</code> to an arbitrary number of words without leaving unclosed or corrupted tags?</p>

<p>i.e.</p>

<pre><code>&lt;p&gt;
    Proin tristique dapibus neque. Nam eget purus sit amet leo
    tincidunt accumsan.
&lt;/p&gt;
&lt;p&gt;
    Proin semper, orci at mattis blandit, augue justo blandit nulla.
    &lt;span&gt;Quisque ante congue justo&lt;/span&gt;, ultrices aliquet, mattis eget,
    hendrerit, &lt;em&gt;justo&lt;/em&gt;.
&lt;/p&gt;
</code></pre>

<p>Abbreviated to 25 words would be:</p>

<pre><code>&lt;p&gt;
    Proin tristique dapibus neque. Nam eget purus sit amet leo
    tincidunt accumsan.
&lt;/p&gt;
&lt;p&gt;
    Proin semper, orci at mattis blandit, augue justo blandit nulla.
    &lt;span&gt;Quisque ante congue...&lt;/span&gt;
&lt;/p&gt;
</code></pre>

If you are creating composite UserControl, then you can set the
CSSClass
property on the child controls..
If not, then you need to expose properties that are either of the
Style
type, or (as I often do) string properties that apply CSS at the render type (i.e. take them properties and add a
style
attribute to the HTML tags when rendering).