Todos sabemos que las etiquetas en HTML pueden tener atributos tales como alt, title, href etc… Aparte de para lo obvio estos atributos nos pueden servir para dar especificidad a nuestros selectores CSS. Los llamados selectores de atributo, son unos selectores avanzados y escasamente conocidos, capaces de identificar estos atributos de un elemento y pasarles un estilo. Con ellos nos podríamos librar de por ejemplo, poner clases e identificadores a muchas etiquetas HTML.
Existen un número reducido de selectores de atributo en CSS2, pero éstos se han ampliado para la próxima versión de CSS3. En este artículo veremos cuantos tipos de selectores de atributo hay y la mejor manera de utilizarlos.
1 2 3 4 | <!--HTML--> <abbr title="Cascading Style Sheets">CSS</abbr> <!--CSS--> abbr[title] {color: #666;border-bottom: 1px dotted #666;} |
1 2 3 4 5 6 | <!--HTML--> <label for="nombre">Nombre</label> <input type="text" id="nombre" /> <input type="submit" value="Enviar" /> <!--CSS--> input[type="text"] {width: 200px;} |
1 2 3 4 5 | <!--HTML--> <a href="#" title="Abre PDF ">Descargar<a> <a href="#" title="descargar">El selector de atributo no se aplicará en este enlace</a> <!--CSS--> a[title~=PDF]{background:url(img/pdf.gif) no-repeat center right} |
1 2 3 4 | <!--HTML--> <span lang="en">Windows</span> <!--CSS--> *[lang|="es"] { color : red } |
Los navegadores Standard, ya incluyen soporte para varios o casi todos los selectores de CSS3, por lo tanto los selectores que veremos a continuación funcionaran correctamente en Opera, Safari, firefox y Chrome. Según la Microsoft Developer Network de Microsoft, estos selectores son compatibles en Internet Explorer 7 y 8.
A este respecto, existe una herramienta muy útil llamada CSS Selectors test que permite comprobar los selectores que soporta el navegador con el que se hace la prueba.
1 2 3 4 5 | <!--HTML--> <a href="http://www.circulodemaquetadores.com/" >este enlace tendrá un color gris</a> <a href="#" >El selector de atributo no se aplicará en este enlace </a> <!--CSS--> a[href^=http://] {color:#ccc} |
1 2 3 4 5 | /*CSS*/ a[href$=".jpg"] {background: url(jpeg.gif) no-repeat left 50%;padding: 2px 0 2px 20px;} a[href$=".pdf"] {background: url(pdf.gif) no-repeat left 50%;padding: 2px 0 2px 20px;} a[href$=".doc"] {background: url(word.gif) no-repeat left 50%;padding: 2px 0 2px 20px;} a[href$=".swf"] {background: url(flash.gif) no-repeat left 50%;padding: 2px 0 2px 20px;} |
1 2 3 4 5 6 | <!--HTML--> <p title="home">El selector de atributo no se aplicará en este párrafo </p> <p title="contact">Este párrafo tendrá un tamaño de fuente de 1.2em y negrita</p> <p title="house"> El selector de atributo no se aplicará en este párrafo</p> <!--CSS--> p[title*="ont"] {font-size:1.2em; font-weight:bold} |
Si quieres seguir las respuestas de este artículo: subscríbete a las respuestas.
Puedes dejar un comentario, o hacer trackback desde tu propio sitio Web.
Deja un comentario