Hi @Ipstenu,
Thanks for taking the time to respond.
I don't think I explained myself very well. I know there ARE classes and IDs for all widgets - these differentiate the type of widget. I also know it's possible to set (for Text Widgets) an inner HTML element with permanent class/ID.
My suggestion is that it'd be really useful to be able to attribute a specific widget (preferably the containing li you haven't included here) with a specific class or ID that can then be used to manipulate the site.
E.g. a text widget has a containing li like this:
<li id="text-14" class="widgetcontainer widget_text">
But, the ID changes depending on what order it was generated in the WP CMS, and the classes cannot be set either (except if you create your own custom widget).
Say I want to hide that li if I'm on a particular page (e.g. a call to contact if one is looking at the contact page already). Now, if I only have one text widget in that aside, this is easy, I just say body.this-page .widget-text {display:none;} in my CSS.
But, if it's this specific text widget in a list of several that I want to hide, I must rely on id="text-14" as the only differentiator. Now, if I accidentally delete that widget and have to recreate it, I have to go into the CSS and change #text-14 to whatever the new widget ID is.
If I could add a custom class, or define a custom ID e.g.
<li id="my-custom-ID" class="widgetcontainer widget_text or_my_custom_class">
Then if the original widget dies, I can just define the new widget as being the same as the old one by adding that custom ID or class.
Is that clearer?
Thanks again...