This one's interesting... the DNNTree seems to have inherited a strange way of assigning a client-side ID, for it uses UniqueID and substitutes out the : with a _. I have no idea why it does this instead of simply using ClientID... It now is a problem cause instead of using :, xhtmlConformance uses a $. So, we have two options.
1) continue the madness (IMO) and add another replace for the $ to use a _.
2) simply use ClientID.
I chose to use ClientID for the next release. Unfortunately, I cannot post this until the next DNN release due to the need of the controls to use the latest WebUtility. If you want to get the webcontrol source and make the change yourself simply change the following line in the DNNTreeUpLevelWriter.vb file
writer.AddAttribute(HtmlTextWriterAttribute.Id, _tree.UniqueID.Replace(":", "_"))
with this
writer.AddAttribute(HtmlTextWriterAttribute.Id, _tree.ClientID)
Also change the similar line in the DNNTreeWriter.vb file.
I'm glad you pointed this out!
Jon