Estoy desarrollando una aplicación que usa ubiquity-xforms. Previamente había estado publicando las páginas como texto/html con el doctype XHTML 1.0.¿Se puede dar estilo a los elementos XHTML en otro espacio de nombres usando identificadores css de nombre y clase?
Si cambio el tipo mime a application/xhtml + xml, vería una mejora de rendimiento bastante grande, porque el javascript podría usar las funciones get ____ NS(), en lugar de lo que está haciendo ahora (iterando lentamente a través de todo Árbol DOM cada vez que necesita seleccionar un elemento).
Pero cuando probé esto, un montón de mi CSS dejó de funcionar. Noté que cuando inspeccioné los elementos, ya sea en Firebug o en el WebKit Nightly Web Inspector, el punto de falla fueron los selectores '.classname' y '#id' css en los elementos en el espacio de nombres XFORMS. También noté que en las propiedades de DOM listadas para esos elementos carecían de los atributos 'id' y 'className'.
Mi pregunta es, ¿hay alguna manera de que pueda conseguir que el UA reconozca estos como clases e ids?
cosas que he intentado, sin éxito:
- especificando el "id" atributos como identificación en ATTLIST de un tipo de documento en línea
- tratar cada tipo de documento que pude, o ningún tipo de documento en absoluto
- calificación de los atributos id y class name en el espacio de nombres xhtml (es decir, xhtml: id)
Aquí hay un ejemplo de xhtml. No funciona bien en Firefox 3.5 o Safari 4/WebKit Nightly
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:xf="http://www.w3.org/2002/xforms">
<head>
<style type="text/css">
/* <![CDATA[ */
#test {
background-color: red;
}
.testing {
color: blue;
}
/* ]]> */
</style>
</head>
<body>
<xf:group id="test" class="testing">Test</xf:group>
</body>
Como estoy desarrollando una aplicación interna, me dieron permiso para establecer los requisitos del navegador, por lo que IE no es un problema (la línea base es Firefox 3.6 y Safari 4). Tenía la esperanza de poder evitar tener que modificar todos los estilos, pero parece que no tengo muchas opciones. – Frankie