<span style="color:#DEDEDE;background-color:#FFEEDD" onclick="load()" >Label</span>
Whats really is misleading in ASP.Net is Visual Studio’s intellisense. Intellisense does not show that any elements declared as properties in the server control be rendered to HTML. In fact, any attributes that the server control does not recognize will get propagated to the HTML. So its actually perfectly legal to do the following.
<asp:Label id="Label1" runat="server" text="label" style="color:#DEDEDE;background-color:#FFEEDD" onclick="load();" />
Below is the actual HTML that has been rendered.