CSS namespaces are the first argument given in support of prefixing on
Deepa's blog (
http://iamdeepa.com/blog/?p=34). Only arguments against
the prefix that address this issue (or perhaps any related CSS issues)
should be included in this thread. I have copied the related argument
from Deepa below.
1.CSS namespaces
We would have had to have introduced namespaces in CSS in order to
distinguish styles applied to a Halo component vs a Gumbo component
(since type selectors use the leaf name of an MXML tag). Introducing
namespaces in CSS is a beast – very tricky for the compiler and the
tools. Developers would have needed a new CSS syntax to target styles
for sets of components based on the namespace of the component set.
This would have required updating the internal CSS parser to be aware
of CSS namespace syntax, at least for element selectors, as well as
updating the Flex compiler to track style namespaces. Additionally,
support would have to be added such that Flex styles could, at
runtime, be updated to handle namespaces. Even if all of this work was
undertaken, other issues crop up. Since CSS does not support packages,
if we tried using packaging to distinguish styles applied to a Halo
button vs styles we want applied to a Gumbo button, like so:
mx.controls.Button
{
}
flex.components.Button
{
}
we would still be out of luck because dots (.) in CSS have pre-
existing meaning. And, if we did add CSS namespace support, migrating
pre-Gumbo code to Gumbo would be more difficult, something we try to
avoid when possible. Additionally, there is an inherent trickiness
with avoiding code bloat when depending on namespaces to control style
inclusions. Because of naming collisions, you’re almost guaranteed to
bloat your SWFs due to styles for one component being pulled in even
if that component wasn’t in use in your application.