Depending on the information you want to store you should look at some of the other attributes available. These don't look like good candidates, but 'rel' has been used for lots of interesting things.
In HTML5, yes. You just have to prefix them with data-
. See the spec.
Of course, this implies you should be using the HTML5 doctype (<!doctype html>
), even though browsers don't care.
You can. The page will not pass verification, however most browsers will accept it.
It is almost certainly the wrong way of doing it. Try using class="hasTooltip_yes tipcolour_yellow"
Well, you can always create your own DTD to get new valid attributes for your tags. Browser won't hiccup, you should test your JavaScript if you can access these custom attributes. Or you can use the existing facilities provided by HTML and CSS. You can use multiple classes like
<a href="..." class="class-one class-two has-tooltip">
For the colour selection I strongly discourage you to use hard-coded colour names in your HTML, you have CSS for declaring styles. Use the class attribute as a hook for the CSS declaration, and choose semantic class names, for example
HTML:
<a href="..." class="has-tooltip common-tooltip">
<a href="..." class="has-tooltip long-tooltip">
CSS:
a.has-tooltip {
colour: red;
}
a.common-tooltip {
background: #ffffd;
}
a.long-tooltip {
background: #ebf;
}
And in your JavaScript code you can generate elements with classes like "long-tooltip" and "common-tooltip" instead of "yellow-tooltip", so you won't contradict yourself in case of redesigning the page to have green tooltips.