Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CSS Cascade Style Sheets Parte I: Introducción A Las Hojas de Estilo
CSS Cascade Style Sheets Parte I: Introducción A Las Hojas de Estilo
Microsoft Internet Explorer 4.0, Internet Explorer 3.0 tambin ofrece cierto apoyo a las hojas de estilo en cascada. Los lanzamientos de Internet Explorer 5.0 y Communicator 5.0 estandarizarn el uso de las hojas de estilo en poco tiempo. Cul es la importancia de las hojas de estilo? Las hojas de estilo son la innovacin ms importante al HTML (tambin se usan en otros lenguajes como XML y SGML), ya que le dan capacidades que nunca tuvo, entre otras mencionaremos... El uso de diversas unidades de medicin pixeles, puntos, picas, mm, en los principales elementos del HTML, como son tablas, fuentes, bordes y en general los elementos que tenan atributos como "size" "height" "width". El posicionamiento de bloques de texto en cualquier parte del documento HTML, ya que es posible definir en diversas unidades la posicin de un bloque de texto. Mejor control sobre las fuentes que es necesario para otras tecnologas relacionadas como la fuentes dinmicas. El poder cambiar las caractersticas de una hoja de estilo mediante el uso de lenguajes de programacin web como "Javascript" o "VB script". Las hojas de estilo son la base de la implementacin estndar del HTML dinmico o DHTML. Cuales son los tipos de hojas de estilo? Existen actualmente dos tipos de hojas de estilo, las hojas de estilo tipo "CSS" (cascading style sheet) y las hojas de estilo en Javascript, este tutorial bsico esta enfocado en las hojas de estilo CSS porque son mas populares, son estndar en todos los browsers que soportan hojas de estilo y adems porque no es necesario tener conocimientos de programacin para manejarlas.
Aunque no es necesario se recomienda usar el atributo "type". A continuacin se muestra como se usa el tag <STYLE>. Ejemplo <HTML> <HEAD> Diversos datos de la cabeza del documento..... <STYLE type="text/css"> <!-Definicin de los diversos estilos y sus caractersticas. --> </STYLE> </HEAD> <BODY> Contenido del documento... </BODY> </HTML> Como se puede ver el tag <STYLE> esta en la cabeza del documento como lo indicamos en la parte anterior, este tag debe cerrarse, porque el navegador considera todo lo que se escribe despus del primer tag como parte de un hoja de estilo.
Tambin se puede ver que se usaron los signos de comentario <!-- --> , los smbolos de comentario se usan para ocultar la hoja de estilo de los navegadores que no soportan hojas de estilo.
En el ejemplo hay un comentario escrito entre los smbolos "/*" y "*/" (signos familiares en C/C++, Java y Javascript), estos smbolos sirven para incluir comentarios dentro de una hoja de estilo, todo lo que se escriba dentro de estos smbolos se considerara comentario y no tendr ningn efecto dentro del estilo. Lo que se incluye entre las llaves "{" y "}" son las propiedades del estilo, en este ejemplo "color:#ff0000" se refiere al color del texto, "font-style:italic" indica que la fuente ser cursiva, "text-align:center" indica que el texto va centrado. Quiz no queden claro del todo estas propiedades, mas adelante explicaremos las diversas propiedades y sus posibles valores. A continuacin explicaremos como deben escribirse las propiedades de un estilo estilo {propiedad:valor; propiedad:valor; propiedad:valor; propiedad:valor; propiedad:valor;} El nombre de la propiedad debe escribirse en minsculas, a continuacin deben usarse dos puntos ":", el valor del atributo debe escribirse a la derecha del smbolo ":" y cuando se termine de indicar el valor se debe usar el smbolo ";" punto y coma, cuando se usen varias propiedades, estas deben separarse con espacios. o ponerse en otro rengln. A continuacin se presenta otro ejemplo: <HTML> <HEAD> <TITLE>Un simple ejemplo</TITLE> <STYLE type="text/css"> <!--H1{color:red;} BLOCKQUOTE{color:blue;} CENTER{color:olive;} --> </STYLE> </HEAD> <BODY>
<H1>Tag Headline 1 con texto rojo.</H1> <BLOCKQUOTE>Aplicacin del tag "blockquote" con texto azul.</BLOCKQUOTE> <CENTER>Texto centrado de color verde oliva.</CENTER> </BODY> </HTML> El navegador interpreta el documento anterior as: Tag Headline 1 con texto rojo. Aplicacin del tag "blockquote" con texto azul. Texto centrado de color verde oliva. Espero que con los anteriores ejemplos haya quedado claro como aplicar estilo a los tags existentes en HTML, de lo contrario lea por favor otra vez la parte anterior, tambin puede enviarme un e-mail para aclarar sus dudas a lunamatic@yahoo.com. Recuerde que mas adelante se explicarn con detalle las diversas propiedades de los estilos.
class
<SPAN class="describe">
style
Los atributos "id" y "class" no son exclusivos del tag <SPAN>, se pueden usar el mayora de los tags del HTML, el atributo "style" tambin se puede usar en la mayora de los tags, este ultimo se explicar mas adelante.
<HEAD> <TITLE>Otro estilo</TITLE> <STYLE type="text/css"> <!-BODY{background-color:gray;} #estilouno{color:navy; text-align:center;} #estilodos{color:red; text-align:right;} #estilotres{color:blue;} --> </STYLE> </HEAD> <BODY> <SPAN id="estilouno">Este texto esta definido usando un estilo</SPAN> <DIV id="estilodos">Este texto tambin esta definido usando un estilo.</DIV> <P id="estilotres">Este texto tambin.</P> </BODY> </HTML> El navegador interpretara el documento anterior as: Este texto esta definido usando un estilo. Este texto tambin esta definido usando un estilo. Este texto tambin. Como se puede ver en la hoja de estilo se definieron tres estilos particulares que despus se aplicaron usando el atributo "id" en diversos tags, tambin se defini el estilo del tag <BODY> que define las caracteristicas del cuerpo del documento.
</STYLE> </HEAD> <BODY> <DIV id="titulo">TITULO</DIV> <SPAN class="nuestro_estilo"> El veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu. </SPAN> <p class="otro"> Otro estilo, otro estilo, otro estilo</p> <SPAN class="nuestro_estilo"> Otra vez aplicamos nuestro estilo</span> <DIV class="otro">Aplicar estilos</DIV> </BODY> </HTML> El navegador interpretar el documento anterior as: TITULO El veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu, el veloz gasu. Otro estilo, otro estilo, otro estilo Otra vez aplicamos nuestro estilo Aplicar estilos En el ejemplo anterior se definieron dos clases de estilos y un estilo particular ademas del estilo del cuerpo del documento.
El estilo se define usando los nombres de los tags separados por espacios, el criterio para la aplicacin del estilo se le de derecha a izquierda, como en el ejemplo anterior el estilo se aplica a los tags <BLOCKQUOTE> que estn dentro de tags <P>, otro ejemplo seria. BLOCKQUOTE P UL LI{color:blue; font-weight:bold;} En el ejemplo anterior se indica que se utilizara letra azul de tipo negrita en los tags <LI> de listas que estn dentro de tags <P> que a su vez estn dentro de tags <BLOCKQUOTE>. Tambin es posible definir un clase de criterio contextual, por ejemplo: H1.miencabezado{color:blue; text-align:center;} El estilo anterior indica que solo se aplicara el mismo a los tags <H1> que sean de la clase "miencabezado". Para aplicar el estilo se tendra que escribir en el documento el tag <H1> de la siguiente forma: <H1 class="miencabazado">Este es mi encabezado.</H1> Un ejemplo mas complejo de las diversas formas de usar la seleccin contextual de estilos es: <HTML> <HEAD> <TITLE>Otro ejemplo mas</TITLE> <STYLE> <!-BODY{background-color:silver;} H1 H3 BLOCKQUOTE EM{color:purple; font-style:italic; font-weight:bold;} P H1.tu_estilo{color:maroon;} --> </STYLE> </HEAD> <BODY> <H1>Esta parte del documento esta usando el tag heading 1<H3>Ahora estamos usando el tag heading 3 . <BLOCKQUOTE>Ahora usamos una sangra<EM>Ahora usamos texto con nfasis al cual se le aplica un estilo contextual</EM>Volvemos al texto con sagria</BLOCKQUOTE>volvemos al texto heading3</H3> volvemos al texto de heading 1
</H1> <H1>Texto heading 1 sin un estilo contextual asignado</H1> <P><H1 class="tu_estilo">Este es tu estilo</H1></P> <EM>Texto con nfasis sin un estilo contextual aplicado. </EM> </BODY> </HTML>
1. Se escribe el atributo dentro de cualquier tag que lo soporte. 2. Mediante un signo igual y comillas se asignan los diversos atributos del
estilo.
3. Los atributos se escriben igual que como los hemos venido usando, es decir
nombre del atributo, dos puntos, valor del atributo, punto y coma. Si se usan varios atributos se separan con espacio o se ponen en otro rengln. 4. Es necesario cerrar el tag en el cual se aplic el estilo. Un ejemplo de uso es: <P style="text-align:center; font-style:italic; font-weight:bold; color:purple;">Estilo definido directamente mediante el uso del atributo "style".</P> El navegador interpretar los tags anteriores de la siguiente forma: Estilo definido directamente mediante el uso del atributo "style" En general se recomienda definir un estilo en la hoja de estilo, solo en algunos casos es til definir el estilo directamente.
1. Se crea un archivo de texto sin formato. 2. Se omite el tag <STYLE> y los smbolos de comentario <!-- -->, as como
cualquier tag HTML 3. Se nombra el documento con cualquier nombre, se recomienda que el documento tenga la extensin "css" que es la caracterstica de los archivos de hoja de estilo en cascada. Por ejemplo la siguiente hoja de estilo /*newstyle.css elaborada por Jorge Luna Rivero*/ .textnecio{font-family:helvetica; text-align:justify;} .fecha{font-family:helvetica; font-weight:bold; font-size:9pt; color:#ffffff; background-color:#000070; padding:3,2,3,2; width:485; float:top;
text-align:center;} .lateral{font-family:helvetica; text-align:center; font-size:8pt; color:#ffffff; padding:3,10,3,10;} .credits{ font-family:helvetica; font-size:8pt; text-align:center;} .titulo2{ color:#ff0000; font-family:helvetica; font-size:14pt;} .cuerpos{ font-family:helvetica; text-align:justify;}
Como se puede ver la hoja de estilo no incluye ningn tag HTML, esta hoja de estilo es un hoja de estilo real que yo uso en este website, incluye muchos atributos que trataremos en el siguiente captulo. Para incluir esta hoja de estilo dentro del documento HTML, se usa el tag <LINK> en la cabeza del documento, junto con ciertos atributos de la siguiente manera: <LINK rel="stylesheet" type="text/css" href="url de la hoja de estilo"> El tag <LINK> tiene diversos usos, por lo que es importante definir que se esta usando para insertar un estilo, por eso siempre se debe usar el atributo "rel" con el valor "stylesheet" cuando se usa para insertar una hoja de estilo, el atributo type con el valor "text/css" (para el caso de las hojas de estilo CSS), y el atributo "href" que especificara la ubicacin y nombre de la hoja de estilo. Por ejemplo el siguiente documento HTML. <HTML> <HEAD> <TITLE>Otro ejemplo</TITLE> <LINK rel="stylesheet" type="text/css" href="estilos/newstyle.css"> </HEAD> <BODY> Contenido del cuerpo del documento...
</BODY> </HTML> El documento anterior usara la hoja de estilo de ejemplo de esta seccin. Es posible usar varias hojas de estilo externas e internas en un documento HTML, esto se hace de la siguiente forma. <STYLE type="text/css" src="estilos/newstyle.css"></STYLE> <STYLE type="text/css" src="estilos/mainstyle.css"></STYLE> <STYLE type="text/css"> <!-.nuestro_estilo{color:blue; text-aling:center;} #mi_estilo{font-weight:bold; text-align:center; color:blue;} --> </STYLE> Como se puede ver se pueden especificar archivos externos usando el atributo "src" (cuyo valor ser el nombre y la ubicacin de la hoja de estilo) dentro del tag <STYLE>, tambin se pueden crear una hoja de estilo dentro del documento. Cuando se usa una sola hoja de estilo se debe usar el tag <LINK>. Lo que sucede al usar varias hojas de estilo es que las caracteristicas de las hojas de estilo pierden importancia de abajo hacia arriba, es decir la ultima definicin de la hoja de estilo, sobreescribe las caracteristicas de las hojas que se insertan antes de ella.
PARTE II
Algunas propiedades para definir estilos.
1. Introduccin al formato a nivel de bloque. 1.1 Elementos de nivel bloque. 1.2 Elementos en linea. 1.3 Formato de los elementos a nivel bloque. 2. Propiedades para elementos a nivel de bloque. 2.1 Color de fondo. 2.2 Color del texto del bloque. 2.3 Tapiz de fondo. 2.4 Mrgenes. 2.5 Margenes internos. 2.6 Ancho del bloque. 2.7 Alineacin de un bloque. 2.8 La propiedad "clear". 2.9 Ancho de bordes. 2.A Color del borde. 2.B Estilo del borde. 2.C Ejemplo de uso de los atributos de bloque. 3.Propiedades de las fuentes. 3.1 3.2 3.3 3.4 3.5 Tipo de fuente. Letra cursiva. Peso de la fuente. Tamao de la fuente. Ejemplo de los diversos atributos de las fuentes.
4. Propiedades para el texto. 4.1 Altura de un rengln "line-height". 4.2 Decoracin del texto, la propiedad "text-decoration". 4.3 La propiedad "text-transform". 4.4 Alineacin del texto, la propiedad "text-align". 4.5 Sangra de la primera linea, la propiedad "text-indent". 4.6 Ejemplo de las propiedades para estilos de texto. 5. Miscelneos. 5.1 Unidades. 5.2 Herencia. 5.3 Acerca de las recomendaciones CSS-1 y CSS-2. 6. Fin de este captulo.
Es posible especificar una imagen que se usara como fondo de un elemento a nivel bloque, para especificar un tapiz de fondo se usa el atributo "background-image" de la siguiente forma: ESTILO{ background-image:url(fondo.jpg);} Como en los ejemplos de esta seccin la palabra "ESTILO" se refiere a la definicin de estilo, una clase, un estilo particular o uno contextual. El atributo backgroundimage, toma siempre el valor "url(nombre y ubicacin de la imagen...)", dentro de los parentesis se debe escribir el nombre y ubicacin de la imagen.
2.4 Mrgenes.
Es posible fijar los margenes de un bloque (en este caso el margen es la distancia de los lados del bloque a los bordes del documento) usando cualquiera de los cuatro atributos que a continuacin se muestran. margin-top (margen superior). margin-bottom (margen inferior). margin-left (margen izquierdo). margin-right (margen derecho). Se pueden usar los cuatro atributos o solo uno, el valor de estos atributos puede ser de puntos, pixeles o porcentajes, por ejemplo: margin-top:20pt; (Indica el tamao del margen superior en puntos). margin-left:34px; (Indica el tamao del margen izquierdo en pixeles). margin-right:23%; (Indica el tamao del margen derecho como valor porcentual). Es importante que para mejores resultados siempre se usen los sufijos "pt" para puntos, "px" para pixeles y el smbolo "%" para los porcentajes ya que si no se indica nada algunos navegadores como Communicator 4.0+ pueden tener problemas para presentar la pgina. Tambin es posible fijar todos los margenes de una sola vez usando el atributo "margin", margin:superiorderecho inferiorizquierdo; Se especifica el tamao de cada margen separandolos por un espacio en el orden que se indic anteriormente: ejemplo: ESTILO {margin:20pt 30pt 20pt 40pt;}
padding:superiorderechoinferiorizquierdo; Por ejemplo: padding:10pt20pt 10pt 20pt; Tambin es posible lado por lado usando los siguientes atributos: "padding-top" (superior), "padding-bottom" (inferior), "padding-left" (izquierdo) y "padding-right" (derecho). Otra opcin cuando todos los margenes son del mismo tamao es usar el atributo padding de la siguiente forma: paddding:20pt; que automticamente fija todos los margenes internos a 20 puntos, como en el caso de los margenes del documento es posible usar diversas formas para especificar el tamao como es el uso de pixeles(px), puntos(pt) o porcentajes(%), en algunos casos es posible usar picas(pc), centmetros(cm), pulgadas(in) y milimetros(mm). Recuerde siempre especificar la unidad puesto que en algunos navegadores pueden no presentar adecuadamente el estilo si no se especifican las unidades.
"left"
clear:left;
"right"
clear:right;
"none"
clear:none;
"border-left-width" (ancho del borde izquierdo). "border-right-width" (ancho del borde derecho). Los atributos anteriores se pueden usar por ejemplo de la siguiente manera: ESTILO {border-top-width:12px; border-bottom-width:10px; border-left-width:5px; border-right-width:4px;}
H1{background-color:#afaefd; width:40px; clear:both; padding-right:10px; padding-top:12px; color:navy;} H3{background-color:blue; margin-left:14px; margin-top:35px;} --> </STYLE> </HEAD> <BODY> <P>Este bloque debe tener texto purpura con un fondo negro y ancho de 400 pixeles, asi como un borde azul con un ancho de 12 pixeles. Ya que definimos en la hoja de estilo la apariencia que se usar con el tag P </P> <DIV class="tuestilo">Este bloque usar la clase de estilo que nombramos "tuestilo", usar una imagen como fondo asi como un borde estilo "inset" con un ancho de 5 puntos, permitir que haya elementos flotando a su derecha y tendr un ancho de 60 pixeles.</DIV> <H1>Entre otras caracteristicas este bloque tiene un margen interno superior de 12 pixeles y un margen interno derecho de 10 pixeles.</H1> <H3>Este bloque usar un margen izquierdo de 14 pixeles y uno superior de 35 pixeles</H3> </DIV> </BODY> </HTML> Para visualiza el ejemplo haga click en el vnculo ejemplo 1. Si vio el ejemplo habr podido notar que no se obtienen los resultados deseados del todo, esto se debe a los errores que tiene cada navegador, este ejemplo 1 se aproxima a lo que se desea usando Netscape Communicator y Explorer 5.0, en todos los casos se definieron los estilos como indica la especificacin CSS-1, sin embargo no se interpretan correctamente. De cualquier forma siempre es posible a base de ensayo y error obtener los resultados deseados, adems incluiremos una apndice con las trampas, trucos y bugs de cada browser.
Propiedad "font-size"
valor posible Una cantidad de unidades, por ejemplo pixeles, puntos, etc. la palabra "italic"
ejemplo font-size:12pt;
significado A travs de este atributo se especifica el tamao de la fuente a usar en un estilo determinado. A travs de este atributo se especifica que la fuente ser cursiva, si no se usa o no se fija no suceder nada. Mediante este atributo se indica el "peso" de la fuente, es decir que tan "negrita" va a ser, si no se usa, la fuente sera normal. Este atributo especifica el tipo de fuente que se usar en un estilo.
"font-style"
font-style:italic;
"font-weight"
Las palabras "bold", font-weight:bold; "bolder", "lighter", o un nmero de 100 a 900, donde 100 es lo mas "ligero" y 900 lo ms "pesado". El nombre de la fuente que se usar, o varias fuentes alternativas separadas por comas. font-family:Arial;
"font-family"
Para especificar el peso de la fuente, es decir que tan "negrita" ser, se usa la propiedad "font-weight", con uno de los siguientes valores: "bold" (negrita). "bolder" (mas negrita). "lighter" (ligera). O usando un nmero de 100 a 900, donde 100 es equivalente a "lighter" y 900 a "bolder". Un ejemplo es: ESTILO {font-weight:bold;} Generalmente se usa este atributo con el valor "bold", puesto que casi nunca es necesario manejar un aspecto diferente del peso de la fuente.
<BODY> <DIV class="miestilo">Estas lineas estn usando el estilo llamado "mi_estilo".</DIV> <H3>Esta linea aplica un estilo para el tag Heading 3.</H3> </BODY> </HTML> Para visualizar el ejemplo haga click este ejemplo debe trabajar sin problemas en todas las versiones de Netscape Communicator a partir de la 4.01 y en Microsoft Internet Explorer a partir de la versin 4.
Esta propiedad solo admite valores de largos absolutos (puntos, pixeles, etc) y largos relativos (porcentajes). Por ejemplo: ESTILO{text-indent:100px;} ESTILO{text-indent:5%;} El primer ejemplo indica que la primera linea de un prrafo estar sangrada 100 px, o separada 100 pixeles del margen izquierdo del elemento que la contiene, el segundo ejemplo indica que estar separada del margen izquierdo del elemento que la contiene 5% del ancho de dicho elemento.
<BR><BR><DIV class="sangria">SANGRIA abcdefghijklmnopqrstuvwxyz, abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz, abcdefghijklmnopqrstuvwxyz, abcdefghijklmnopqrstuvwxyz</DIV> <br> <DIV class="centrado">CENTRADO</Div> <br> <DIV class="capitales">capitales, abcdef, ghijkl, mnopq, rstuvw, xyz, capitales.</diV> <br> <DIV class="mayusculas">abcdefghijklmnopqrstuvwxyz</DIV> <p class="demoaltura"> AAAAAAAAAA<br>BBBBBBBB<br>CCCCCCCCC<br>DDDDDDDDD </p> </BODY> </HTML> El documento anterior se puede ver haciendo click en el link ejemplo. Este ejemplo trabaja en todas las versiones de Communicator a partir de la 4.01 y todas las de MSIE a partir de la 4.00, con las excepciones que se mencionaron en cada caso.
5. Miscelneos.
5.1 Unidades.
En todas la propiedades de las hojas de estilo que controlan el tamao de algo es posible usar dos tipos de unidades de medicin: absolutas y relativas. La siguiente tabla muestra las unidades relativas: Sufijo em Ejemplo line-height:3em; Significado Se refiere a la altura de la fuente del rengln actual, generalmente se usa como referencia la M. En el ejemplo se indica que la altura del rengln sera 3 veces la altura mxima de las fuentes de ese rengln. Se refiere a la mitad de la altura de la fuente usada en el rengln actual, generalmente se usa la X como referencia. En el ejemplo se indica que la altura del
ex
line-height:4ex;
rengln sera 4 veces la mitad de la altura mxima de la fuente usada. % width:12%; Este valor porcentual se toma con respecto al elemento que contiene el prrafo o rengln donde se aplico el estilo, como por ejemplo la ventana del navegador o la celda de una tabla. En este caso se indica que la fuente del estilo tendr doce pixeles de tamao, esta es una unidad relativa porque depende de la resolucin y el tamao del monitor en que se visualiza el documento. Aunque tambin podra considerarse como unidad absoluta.
px
font-size:12px;
La siguiente tabla muestra las unidades absolutas. Sufijo "pt" "pc" "in" "mm" "cm" Ejemplo font-size:12pt; textindent:12pc; width:7in; fontsize:20mm; width:23cm; Significado Al usar el sufijo "pt" se trabaja con puntos, una conocida unidad tipogrfica. Al usa el sufijo "pc se trabaja con picas que tambin son muy usadas en el mundo de la tipografa y el diseo. Mediante este sufijo se trabaja con pulgadas. Milimetros Centmetros.
5.2 Herencia.
Un elemento HTML que contiene otro elemento es considerado padre de tal elemento, de esta forma un elemento es considerado hijo del elemento que lo contiene. Por ejemplo: <BODY> <BLOCKQUOTE>Esta <STRONG>es una</STRONG>linea de texto,</BLOCKQUOTE> </BODY> En el anterior ejemplo los elementos <STRONG> y <BLOCKQUOTE> son hijos del elemento <BODY>, el elemento <STRONG> es hijo del elemento <BLOCKQUOTE>, el elemento <BODY> es padre de todos los elementos y el elemento <BLOCKQUOTE> es padre del elemento <STRONG>. Lo anterior es importante porque la mayora de las veces el elemento hijo hereda las caractersticas del elemento padre, por ejemplo: <BLOCKQUOTE style="font-size:12pt; color:red">Esta <STRONG>es</STRONG> una linea.</BLOCKQUOTE>
En el ejemplo anterior el tag <STRONG> proporcionara sus caracteristicas predeterminadas a la palabra "es", pero heredar de su elemento padre (el tag <BLOCKQUOTE>) un tamao de fuente de doce puntos. La mayora de las propiedades son heredables, por ejemplo si se desea que todo un documento use la fuente Arial, se puede hacer lo siguiente; <BODY style="font-family:Arial;"> De esta forma todos los elementos que sean hijos del tag <BODY> usarn fuente Arial. En general podemos decir que si un elemento hijo no especifica sus propio estilo hereda el estilo de su elemento padre.
PARTE III
Colocacin de bloques usando CSS.
1. Introduccin al posicionamiento (o colocacin) de bloques. 2. Tipos de posicionamiento. Especificando la posicin las propiedades "left" y "top". Colocacin absoluta. Colocacin relativa. Combinaciones. Altura y ancho de un bloque, las propiedades "width" y "height". 3. Control de ciertos aspectos de los bloques. Orden de colocacin, la propiedad "z-index". Control del sobreflujo, la propiedad "overflow". Visibilidad, la propiedad "visibility". 4. Ejemplos de las propiedades tratadas en este captulo. Ejemplo de Colocacin absoluta. Ejemplo de Colocacin relativa. Ejemplo del orden de colocacin "z-index". Ejemplo del manejo del sobreflujo. 5. Fin de este captulo. Puntos a recordar para la colocacin de bloques.
2. Tipos de posicionamiento.
Bsicamente existen dos tipos de posicionamiento, el posicionamiento absoluto y el posicionamiento relativo. El posicionamiento absoluto permite colocar un bloque de texto en cualquier parte del documento sin importar el flujo del texto, este posicionamiento toma como referencia la esquina superior izquierda del elemento padre del bloque.
El posicionamiento relativo conserva el bloque en el flujo normal del texto y solo es posible definir la distancia de los bordes superior e izquierdo al elemento mas cercano. Para definir el tipo de posicionamiento o colocacin de un bloque se usa la propiedad "position" con uno de dos valores: "absolute" para colocacin absoluta, "relative" para colocacin relativa. Ejemplo: ESTILO {position:absolute;} ESTILO {position:relative;} Cabe mencionar que cuando hablamos de bloque nos referimos a la parte del documento donde se aplica un estilo usando los tags <DIV> y <SPAN>.
left
En ambos casos una top:0px; cantidad especificada usando una unidad relativa o absoluta o la palabra "auto" que left:230px; es equivalente a no usar la propiedad.
Estas dos propiedades se usan junto con la propiedad "position" ya que no trabajan por si solas. Un ejemplo de uso es: <STYLE type="text/css"> #mibloque{position:absolute; top:20px; left:25px;} </STYLE> Si la definicin de estilo anterior se aplicara a un bloque seria interpretada de la siguiente forma:
En el caso de la colocacin absoluta no importa que el bloque una vez colocado quede encima de otro bloque.
2.4 Combinaciones.
Es posible que existan elementos con colocacin absoluta anidados dentro de un elemento con colocacin relativa o que haya elementos con colocacin relativa anidados dentro de un elemento con colocacin absoluta. Por ejemplo: <STYLE type="text/css"> #miestilo{position:relative; top:12px; left;12px;} #tuestilo{position:absolute; top:20px; left:15px;} </STYLE> Los estilos definidos se aplicaran en un documento as: <SPAN id="miestilo"> Mi estilo <DIV id="tuestilo">Tu estilo</DIV> </SPAN> Al ser interpretados se veran as:
Como estas propiedades ya se mencionaron en el captulo anterior solo mencionaremos que en Netscape Communicator y Microsoft Internet Explorer 4 el valor por default de estas propiedades es 100%, en Internet Explorer 5 el valor por default es "auto" que significa que el ancho del bloque se ajustar a su contenido.
overflow:hidden; En este caso se indica que cuando el contenido del bloque exceda el tamao de este debe ocultarse todo lo que quede fuera de las dimensiones del bloque. overflow:visible; En este caso se indica que cuando el contenido del bloque exceda el tamao especificado para este, se deber modificar la altura o anchura del bloque como se requiera. En este caso cuando el contenido exceda las dimensiones del bloque, el browser debe mostrar barras de desplazamiento para poder visualizar el sobreflujo. En este caso sin importar que haya o no sobreflujo el bloque mostrara barras de desplazamiento.
"visible"
"auto"
overflow:auto;
"scroll"
overflow:scroll;
La propiedad "overflow" es posible que solo trabaje con todos los valores mencionados en Microsoft Internet Explorer 5.0, en Communicator 4.x y algunas versiones de IE 4.0 no funcionan los valores "auto" y "scroll".
Los siguientes ejemplos muestran las diferentes propiedades tratadas en este captulo:
top:15px; left:70px; height:150; width:150; background-color:#eeeeff;} </STYLE> </HEAD> <BODY> Flujo del texto, flujo del texto, flujo del texto, <SPAN id="bloque1"> Bloque 1 con posicin relativa al flujo del texto</SPAN> Flujo del texto, <BR> flujo del texto, flujo del texto, flujo del texto, <SPAN id="bloque2">Bloque 2 con pocisin relativa al flujo del texto</</SPAN> flujo del texto, flujo del texto, </BODY> </HTML> Para ver este ejemplo haga click aqu.
height:70; width:300; z-index:4; font-family:Comic Sans MS; font-size:18pt; color:blue;} #bloque3{position:absolute; top:40px; left:40px; height:70; width:300; z-index:2; font-weight:bold; font-size:19pt; color:olive;} #bloque4{position:absolute; top:50px; left:50px; height:70; width:300; z-index:3; font-style:italic; font-weight:bold; font-size:16pt;} </STYLE> </HEAD> <BODY> <SPAN id="bloque1">Bloque 1 con "z-index" 1</SPAN> <SPAN id="bloque2">Bloque 2 con "z-index" 4</SPAN> <SPAN id="bloque3">Bloque 3 con "z-index" 2</SPAN> <SPAN id="bloque4">Bloque 4 con "z-index" 3</SPAN> </BODY> </HTML> Para ver este ejemplo haga click aqu.
<HEAD> <STYLE type="text/css"> #bloque1{position:absolute; top:20px; left:20px; height:100; width:100; overflow:visible; font-family:helvetica; font-size:10pt; color:red; background-color:#eeeeee;} #bloque2{position:absolute; top:20px; left:200px; height:100; width:100; overflow:hidden; font-family:Comic Sans MS; font-size:10pt; color:blue; background-color:#ffffee;} #bloque3{position:absolute; top:200px; left:20px; height:100; width:100; overflow:auto; font-weight:bold; font-size:10pt; color:olive; background-color:#eeffff;} #bloque4{position:absolute; top:200px; left:200px; height:100; width:100; overflow:scroll;
font-weight:bold; font-size:10pt; background-color:#ffeeee;} </STYLE> </HEAD> <BODY> <SPAN id="bloque1"> Sobreflujo visible, sobreflujo visible, sobreflujo visible. Sobreflujo visible, sobreflujo visible, sobreflujo visible. Sobreflujo visible, sobreflujo visible, sobreflujo visible. </SPAN> <SPAN id="bloque2"> Sobreflujo oculto, sobreflujo oculto, sobreflujo oculto. sobreflujo oculto, sobreflujo oculto, sobreflujo oculto. sobreflujo oculto, sobreflujo oculto, sobreflujo oculto. </SPAN> <SPAN id="bloque3"> Sobreflujo controlado con auto, sobreflujo controlado con auto, sobreflujo controlado con auto, sobreflujo controlado con auto, sobreflujo controlado con auto, sobreflujo controlado con auto, sobreflujo controlado con auto, sobreflujo controlado con auto, sobreflujo controlado con auto, sobreflujo controlado con auto, sobreflujo controlado con auto, sobreflujo controlado con auto. </SPAN> <SPAN id="bloque4"> Sobreflujo controlado usando "scroll". </SPAN>
APENDICE 1
Cmo usar colores? Sumario de esta apndice.
Como aplicar color en HTML. Paleta de colores estndar. Como usar valores hexadecimales. Como obtener el valor RGB hexadecimal de cualquier color? Ejercicios. Para finalizar.
Nombres de colores y valores RGB en nmeros hexadecimales: Black = "#000000" Silver = "#C0C0C0" Gray = "#808080" White = "#FFFFFF" Maroon = "#800000" Red = "#FF0000" Purple = "#800080" Fuchsia = "#FF00FF" Green = "#008000" Lime = "#00FF00" Olive = "#808000" Yellow = "#FFFF00" Navy = "#000080" Blue = "#0000FF" Teal = "#008080" Aqua = "#00FFFF"
Usted puede usar cualquiera de las palabras clave o nmeros hexadecimales mostrados en la tabla de arriba. La desventaja de usar palabras clave es que usted esta sujeto solo a 16 colores, yo recomiendo usar valores hexadecimales, ya que permiten hasta 16 millones de colores, es decir permiten usar color real o color de 24 bits. La paleta de colores que se usa en HTML es del tipo RGB, es decir manipulando la intensidad de tres colores: rojo, verde o azul se puede obtener cualquier color de una gama de 16 millones.
en este caso "Paint Shop Pro 4.14": Como se puede ver se trata de un tipo de color naranja cuyos valores RGB son rojo=200, verde=120, y azul=055. El siguiente paso es convertir estos valores a nmeros hexadecimales, esto se puede hacer con cualquier calculadora, a continuacin muestro como hacer este procedimiento para el valor rojo del color mostrado en la figura , en la calculadora de Windows95, usted puede usar cualquier calculadora para el proceso. 1. El primer paso es introducir el valor en la calculadora, en este caso es el nmero
200. Como puede ver en la parte marcada con el "ovalo" rojo se puede ver que esta seleccionada la opcin "Dec", esto le dice a la calculadora que todos los valores que se escriben en ella son nmeros decimales. 2. El siguiente paso es des seleccionar la opcin "Dec" y seleccionar la opcin "Hex", para indicar a la calculadora que queremos usar nmeros hexadecimales.
Como se puede ver al seleccionar la opcin "Hex" el nmero 200 automticamente cambia a su representacin hexadecimal que es "C8". 200 Dec = C8 Hex Para obtener la equivalencia hexadecimal de los otros valores RGB tiene que usar el mismo procedimiento que hicimos para obtener el equivalente hexadecimal del valor rojo de nuestro color. Recuerde fijar la calculadora a nmeros decimales antes de introducir el nmero decimal. El equivalente hexadecimal del valor rojo que en nmeros decimales es 200, es C8 . Abajo muestro las equivalencias hexadecimales de los otros valores, verde=120 y azul=55. 120 decimal=78 hexadecimal 55 decimal=37 hexadecimal
Poniendo juntos los valores obtenidos tenemos: 200120055 #RRGGBB #C87837 La representacin hexadecimal del color es #C87837. #C87837 Como puede ver el color obtenido es igual al color de la imagen que usamos para
este ejemplo, se puede ver abajo: Usando el procedimiento anterior es decir convirtiendo cada valor RGB a su equivalente hexadecimal, es posible obtener cualquier color. Recuerde que cada valor RGB puede ser un nmero hexadecimal de 00 a FF, o en nmeros decimales de 0 a 255. Tambin los editores de mapas de bits mas recientes presentan una opcin que nos muestra la representacin hexadecimal de un color sin necesidad de hacer conversiones, por ejemplo Paint Shop Pro 5 y superiores:
Ejercicios.
Obtenga la representacin hexadecimal para HTML de un color cuyos valores RGB en nmeros decimales son: Rojo=25 Verde=145 Azul=250. Obtenga la representacin hexadecimal para HTML de un color cuyos valores RGB en nmeros decimales son: Rojo=125 Verde=23 Azul=54.