User:Topaz/Wikiscripts/Enhanced userpage

The enhanced userpage  module is a Wikiscript that enables users to attach a full external CSS document to their userpage. However, other users can only see the enhanced version of your page if they also have the module installed. Installation itself is no different than the installation process for any other Wikiscript. Simply having it installed does not alter your own userpage and will only enable you to view the enhanced version of others' userpages.

Usage
The script attempts to attach to your userpage and any of its subpages. Altering that file will take effect on all pages which start with for any other users who have the module installed. In my userpage.css, for example, I define two new classes to be used as test cases on User:Topaz/Wikiscripts. Users with the enhanced userpage  module installed will see a different message in that section than those who do not - this is because the class definitions in my userpage.css include overrides which hide one span and show another. Users without the module do not ever attempt to load the file; therefore, they never get those class definitions and the spans act as defined in their  attributes.

Compatability
Since the directives in only take effect for users of the module, it is important to ensure that your userpages look acceptable regardless of whether a user has the module installed. If you are using Mozilla Firefox, you can temporarily enable or disable the directives in files by choosing either Basic Page Style (ignores ) or Topaz's enhanced userpage mod (includes ) from the Page Style section of the View menu. While working on your stylesheet, make sure that both versions of your userpage are usable.

You should consider notifying your visitors in some way that you have a file available for them to apply to your userpage. A short message indicating this wouldn't be a bad idea. There is also a userbox available for this purpose:

Implications
With a full CSS document, you have more control over certain features of CSS such as pseudo-classes (,, , etc) and gain the ability to abstract the style of your userpage out of individual attributes and into centrallized classes.