¿Que son las hojas de estilo o Cascada?


Hojas de estilo en cascada (CSS)

Las hojas de estilo son útiles para definir los atributos visuales en documentos HTML. Esto le da a los autores métodos poderosos para definir el aspecto visual del documento, mientras que separa la parte semántica (HTML) de la presentacional (style sheets). En este tutorial aorenderás a implementar atributos de estilo en documetos HTML.

Propiedades de estilo

Las propiedades y sus valores son definidos usando una sintaxis de CSS simple. Estas definiciones no pertenecen al estándar HTML, pero están pensadas para reemplazar los atributos presentacionales que HTML ha juntado durante sus primeros tiempos.

nombre-propiedad: valor-propiedad;

De este modo puedes definir muchos pares de valores y propiedades en un mismo bloque, dado que una definición básica es separada de la próxima por un punto y coma. Un conjunto de propiedades puede entonces ser aplicado, por ejemplo, a un elemento, lo que establecerá el aspecto visual de ese elemento dondequiera que aparezca en el documento.

En el siguiente ejemplo un conjunto de propiedades visuales es definido para el elemento elemento HTML p. Para lograr esto, el nombre del elemento debe aparecer antes de la declaración de propiedades, las cuales irán encerradas entre llaves (“{” y “}”).

p {
padding: 10px;
border-style: solid;
border-color: blue;
border-width: 2px;
background-color: #9EC7EB;
color: white;
font-family: arial,helvetica;
font-size: 11px;
font-weight: bold;
}

Al declarar este código en un documento HTML, todos los párrafos tomarán estas propiedades. En algunos casos necesitas establecer características sólo para algunos párrafos en lugar de para todos. Si este es el caso, puedes usar el atributo “style”, las clases o los selectores ID.

Nota: las propiedades CSS y sus posibles valores no ser´na tratados en profundidad en este sitio. Para encontrar más información acerca de este tema, refiérete a este índice de propiedades para CSS 2.

Definiciones de estilo

Puedes definir propiedades de estilo de tres formas: dentro del rag de apertura de un elemento específico (usando el atributo “style”), dentro de un bloque en el encabezado del documento (usando elelemento HTML style) o en archivos externos (usando el tag HTML link).

Usando el atributo “style”

El atributo “style” permite a los autores declarar propiedades de estilo “en línea” como valor de un atributo. Es útil cuando el autor necesita declarar un conjunto único de propiedades para un elemento específico. La sintaxis para las propiedades CSS son las mismas.

Código
<p style=”padding: 10px; border-style: solid; border-color: blue; border-width: 2px; background-color: #9EC7EB; color: white; font-family: arial,helvetica; font-size: 11px; font-weight: bold;”>Contenido del párrafo</p>
Vista

Contenido del párrafo

Como puedes ver, el estilo declarado en este ejemplo es el mismo declarado en el ejemplo anterior. La diferencia es que este último sólo afecta al elemento contenedor y el primero afecta implícitamente a todos los párrafos.

Usando el elemento HTML style

El elemento HTML style define un bloque donde las declaraciones de estilo pueden ser contenidas. El bloque de estilo debe ser declarado en algún lugar del encabezado del documento (elemento HTML head) y definirá estilos y clases para el documento actual.

<style type=”text/css”>
p {
padding: 10px;
border-style: solid;
border-color: blue;
border-width: 2px;
background-color: #9EC7EB;
color: white;
font-family: arial,helvetica;
font-size: 11px;
font-weight: bold;
}a {
font-size: 12px;
font-weight: bold;
}
</style>

Nota que estas dos definiciones afectarán a todos los elementos “a” y “p” presentes en el documento.

Usando archivos externos

Los archivos externos también pueden ser utilizados para definir propiedades de estilo para uno o más documentos. El archivo, usalmente presenta la extensión “css” (por ejemplo, “basic.css”) y el conjunto de propiedades puede ser definido de la misma forma que en el contenido del elemento HTML style. Esta práctica separa completamente la parte semántica de la presentación del documento, mientras ayuda a los autores a compartir definiciones de estilo entre varias páginas de sitio.

Para hacer referencia a un archivo CSS desde el documento HTML, puedes usar el tag HTML link en el encabezado del mismo. Esta declaración le dice al agente de usuario, dónde se pueden encontrar las declaraciones de estilo de este documento.

<link type=”text/css” href=”basico.css” />

Usar esta misma línea en diferentes documentos, te permitirá especificar atributos comunes a un conjunto de páginas (o inclusive a un sitio entero), lo que puede resultar en actualizaciones más sencillas.

Clases en CSS

Una clase en CSS es una forma de agrupar propiedades que luego pueden ser aplicadas a un elemento específico usando su atributo “class”. Estos grupos reciben nombres y pueden ser definidos exclusivamente para un elemento o para cualquiera. Para definir una clase, los autores deben escribir el elemento para el cual está declarado, seguido por un punto y el nombre de la clase. El bloque de propiedades va encerrado entre llaves como en los ejemplos anteriores.

En el siguiente ejemplo definiremos tres clases: la primera llamada “importante” para el elemento “p”, la segunda llamada “diminuto” para todos los elementos y la tercera llamada “grande” para todos los elementos también.

p.importante {
color: red;
}*.diminuto {
font-size: 8px;
}.grande {
font-size: 12px;
}

Nota que el uso de un asterisco en lugar del elemento indica que esta clase puede ser aplicada a cualquier elemento (es lo mismo que no usar nada). También ten en cuenta que la primera declaración no especifica que la clase debe ser automáticamente aplicada a los elementos “p” del documento; sólo los elementos “p” con el valor “importante” en su atributo “class” serán afectados por este estilo.

Usando el atributo “class”

Usemos el ejemplo anterior para mostrar como aplicar las propiedades agrupadas en las clases a los elementos en un documeto HTML. En el siguiente ejemplo, aplicaremos las tres clases a tres párrafos respectivamente.

<p>Texto importante</p>
<p>Este texto será muy pequeño</p>
<p>Este, en cambio, será grande</p>

Recuerda que la clase “importante” ha sido solo definida para el elemento “p” de modo que ha funcionado bien en el ejemplo anterior, pero no funcionará si la apllicamo a otro elemento (como por ejemplo una tabla, tag HTML table).

<a href=”ejemplo.html”>Ejemplo de su uso</a>

En este caso, el agente de usuario intentará encontrar una clase con el nombre “importante” que haya sido definida para el elemento “a” (a.important {…) o para todos los elementos (.important {…). como no existe ninguna clase con esa definición, ninguna propiedad se aplica al elemento.

el atributo “class” también soporta listas de clases separadas por espacios como valor, lo cual puede ser muy útil para aplicar muchas propiedades de diferentes clases a un solo elementos de una vez.

<p>Texto important y grande</p>

Este párrafo no solo tendrá un color rojo (de la clase “importante”) sino que además tendrá un tamaño de feunte de “12px” (de la clase “grande”).

Selectores ID

Los selectores ID trabajan en forma similar a las clases con un par de excepciones. En primer lugar, en la definición de un selector ID, el elemento del nombre va seguido por un símbolo numeral (#) y un identificador (que se corresponde con el valor del atributo “id” del elemento al que pretende afectar).

p#help {
font-family: arial,helvetica;
font-size: 11px;
font-weight: bold;
}*#hframe {
border-style: solid;
border-color: blue;
border-width: 2px;
}#hcolor {
background-color: #9EC7EB;
color: white;
}

Excepto por el símbolo “#” y el nombre (que debe ser un identificador), este método funciona igual que las clases.

Usando el atributo “id”

La aplicación de propiedades CSS a elementos HTML mediante los selectores ID se da a través de los atributos “id” de los elementos. Como ya debes saber, el atributo “id” está diseñado para actuar como un identificador para elemento (por lo que debe ser único en el documento). Esto claramente significa, que las propiedades definidas a través de este método sólo podrán aplicarse a un único elemento por documento.

En este caso podríamos decir que las propiedades se refieren a un elemento específico, caso contrario al de las clases que son diseñadas para que los elementos se refieran a ellas. En el siguiente ejemplo, un párrafo tiene un valor en su atributo “id” que coincide con una de las fediniciones previas.

<p id=”hframe”>Párrafo</p>

Herencia

La herencia es una característica muy simple, por la cual los elementos contenidos por otros elementos heredan de sus padres las características aunque no haya sido definidas para ellos mismos.

En el siguiente ejemplo, las propiedades definidas para el párrafo anularán aquellas definidas para el cuerpo (tag HTML body). Las propiedaes del cuerpo que no son anuladas, ser heredarán por el párrafo (ya que el mismo está contenido por el cuerpo).

<html>
<head>
<title>Prueba</title>
<style type=”text/css”>
p {
font-family: arial,helvetica;
font-size: 10px;
color: black;
}.importante {
font-size: 12px;
font-weight: bold;
}
</style>
</head>
<body>
<p>Algún texto</p>
</body>
</html>

En este documento, el párrafo tendrá todas las propiedades definidas para el elemento “p” (“font-family”, “font-size” y “color”), pero la propiedad “font-weight” será heredada del cuerpo (su padre).

Cascada

La jerarquía en la estructura de CSS es una de sus más importantes características, y es además de donde toma su denominación de “cascading”. La idea de cascada veine del efecto causado por el orden en que las propiedades son aplicadas a un elemento desde diferentes orígenes. Los tres orígenes posibles son, en orden de relevancia: el autor, el visitante y el navegador.

Las implicancias de este orden son muy pequeñas para los autores, ya que las definiciones de estilos que ellos declaren sólo pueden ser anuladas explícitamente por el usuario. Pero no debes olvidar el echo de que los atributos que no especifiques serán establecidos por el visitante o navegador (y los valores predeterminados de los navegadores pueden variar).

La regla “!important”

La otra variante que provee la propiedad de cascada es la regla “!important”. Con esta regla los autores pueden cambiar el órden en que los estilos son aplicados: los estilos normales son siempre anulados por los estilos importantes.

La regla “!important” es aplicada a las propiedades al final de la declaración (antes del punto y coma) y separada del resto por un espacio.

p {
font-family: arial, helvetica;
font-size: 10px !important;
color: black;
}

En el ejemplo anterior el tamaño de la letra es declarado con la regla “!important”, por lo tanto, cualquier párrafo definido con estilos normales seguirá teniendo un tamaño de fuente de 10px (ya que esta declaración se aplica a todos los párrafos).

El orden de especificidad

El orden de especificidad tiene un mayor impacto en la forma que los autores aplican atributos a sus documentos. A diferencia de la propiedad de cascada, éste especifica el órden en que diferentes declaraciones (atributo “style”, selectores ID, clases, etc.) toman precedencia.

La lista siguiente muestra el órden de especificidad usado para aplicar propiedades CSS a elementos HTML, desde el más específico al más global.

  1. El atributo “style” (por ejemplo, <p style="...">).
  2. Selectores ID (por ejemplo, p#ayuda {...}).
  3. Definición de clase específica (por ejemplo, p.segundo {...}).
  4. Definición de clase global (por ejemplo, *.segundo {...}).
  5. Definición de elemento (por ejemplo, p {...}).
  6. Definición global (por ejemplo, * {...}).

En el siguiente ejemplo analizaremos la aplicación de diferentes definiciones de estilo a un solo elemento.

<html>
<head>
<title>Prueba</title>
<style type=”text/css”>
p {
font-family: arial,helvetica;
font-size: 10px;
color: black;
}.importante {
font-size: 12px;
font-weight: bold;
}
</style>
</head>
<body>
<p style=”font-weight: normal;”>Algún texto</p>
</body>
</html>

Las declaraciones con mayor orden de especificidad anula al resto. En el ejemplo anterior, el párrafo tendrá una fuente “arial, helvetica” y un color negro de las propiedades definidas para el elemento “p”, pero no tendrá un tamaño de fuente de  “10px” debido a que será anulada por la propiedad definida en la clase “importante” que es aplicada al elemento. Subsecuentemente, el elemento recibirá de la clase “importante” un tamaño de fuente de “12px” pero el espesor de la fuente “bold” será anulado por la propiedad definida en el atributo “style”.

Publicado el julio 20, 2012 en Uncategorized. Añade a favoritos el enlace permanente. Deja un comentario.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

css_capas_maria_ramirez

A great WordPress.com site

CSS_CAPAS_E_CASTRO

PROGRAMACION 3

CAROLINA TORRES LAGOS

Historias interesantes

CSS_CAPAS_LISETH_CAICHE

Programacion III ...............................................................Profesor: John Orellana

evelynbarragan1

FIESTAS JULIANAS

Lisbeth Toaza Valdez

Programación III

michaelgonzalezec

CSS_Manejo de Capas...etc

css_capas_luis_muentes

Smile! You’re at the best WordPress.com site ever

AdolfoAguirre

PROGRAMACION III

CSS_CAPAS_J_VELASCO

programacion 3 con el Profesor: John Orellana

WordPress.com en Español

Blog de Noticias de la Comunidad WordPress.com

A %d blogueros les gusta esto: