Selectors d'atributs amb namespace

Publicat el 19/05/2006

Donat un element e amb un atribut att del namespace ns:


<e ns:att="valor">lorem ipsum</e>

Caldrà fer un selector d'atribut escapant els dos punts (:)


e[ns\\:att="value"] {propietats}

Un cas pràctic:


*[xml\\:lang="en"] {font-style: italic;}
Les proves les vaig fer amb un Firefox 1.5.0.3 i un Opera 9b2 sobre Windows. L'error (meu) ha estat no provar-ho a fons. Ara ho he estat provant des de Firefox 1.5.0.3, Opera 8.5, Opera 9b2 i Safari 2.0.3 i la conclusió és: La forma [xml\:lang] només funciona quan el document es serveix com a text/html en: Firefox 1.5.0.3, Opera 9b2 i Safari 2.0.3 L'Opera 8.5 no reacciona. Quan s'usa el mime type application/xml+xhtml la forma citada no funciona tal i com assenyales però en canvi sí que funciona la forma [foo|att] en Firefox 1.5.0.3, Opera 9b2 i Safari 2.0.3. Quan s'especifica el namespace de l'xml (@namespace xml "http://www.example.com";) cap navegador reacciona però si no s'especifica tant el Firefox 1.5.0.3 com el Safari 2.0.3 sí que entenen el selector. (Potser perquè és un namespace reservat?). Per últim, si s'utilitza el selector *:lang(en) amb el mime type application/xml+xhtml funciona amb Firefox 1.5.0.3 i Opera 9b2. Amb el mime type text/html no funciona amb cap navegador.

Comentaris

Afegir un comentari