Selectors de Namespace

Publicat el 13/02/2006

Els selectors de namespace permeten diferenciar un element d'una sintaxi i el d'un altre que s'anomenin igual.

Aquest tipus de selector està documentat com a Working Draft del mòdul de selectors de CSS 3

Donat un codi:


<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="style.css" type="text/css" media="screen" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" 
          xmlns:svg="http://www.w3.org/2000/svg" 
          xmlns:xlink="http://www.w3.org/1999/xlink"
          xml:lang="ca">
<head>
   <title>Sintàxi mesclada</title>
</head>
<body>
   <h1>
      <a href="home.html">Sintàxi mesclada</a>
   </h1>
   <svg:svg>
      <svg:a xlink:href="http://www.w3.org">
         <svg:ellipse cx="2.5" cy="1.5" rx="2" ry="1" />
      </svg:a>
   </svg:svg>
</body>
</html>

Per diferenciar entre l'anchor d'XHTML i l'anchor d'SVG cal declarar un selector del tipus:


@namespace ns url(http://www.example.com);
 ns|E { propietat: valor }

Al cas concret:


@namespace svg url(http://www.w3.org/2000/svg);
 svg|a { width: 10em }

La nomenclatura dels selectors típics funcionaria igual, és a dir:

*|E
Selecciona tots els elements (E) de qualsevol namespace
|E
Selecciona tots els elements (E) que no tinguin cap namespace declarat.
E
És equivalent a *|E

Comentaris

Afegir un comentari