Manual de CSS
Manual de CSS
I. Conceptos Bsicos
Definicin
El trmino CSS proviene de las siglas en ingles (Cascading Style Sheets) en espaol (Hojas de Estilo en Cascada). CSS es un lenguaje creado para controlar la presentacin y diseo de los documentos estructurados en HTML, XHTML y XML. ElW3C se encarga de la normativa y especificacin oficial del CSS.
Caracteristicas:
Controla la visualizacin de un mismo documento HTML/XHTML en funcin del medio; (Pantalla de ordenador, impresora, dispositivos moviles, sintetizadores de voz, sistema braille, proyectores, televisores y dispositivos de baja resolucin). Permite la separacin del diseo y contenido, facilitando el mantenimiento de los sitios web reduciendo el peso de las pginas Web. Proporciona a los diseadores mayor precision y control de la forma de presentacin de los documentos mediante propiedades sencillas.
El mismo que debera estar ubicado dentro de las etiquetas <head> ... </head> del cdigo HTML de la pgina web. Entre los principales atributos y valores del link tenemos:
rel: Define la relacin del vnculo. Para las hojas de estilo, su valor Ser siempre
"stylesheet" type: Define el tipo de documento del vnculo. Ser siempre "text/css". href: Es el valor de la URL que enlaza al Archivo CSS Hoja de estilo.
Estructura
Mediante este mtodo se pueden enlazar a una pgina web, tantos archivos CSS como se necesite y un archivo css puede ser compartido por muchas pginas web. Agregando el atributo LINK al HTML
Primero generamos una estructura (x)HTML (podemos utilizar el bloc de notas u otro editor de texto plano) con la siguiente estructura:
o o
Regla de Estilo: Est integrada por un selector o varios selectores, y una declaracin. Selector: El selector es la parte de la regla que selecciona a qu elementos HTML se aplicara la declaracin. Declaracin: Indica los estilos que se aplicarn a los elementos HTML, se compone por uno ms pares (propiedad: valor) separados de punto y coma ";". - Propiedad: Seala que caracteristica en particular modificaremos - Valor: Es la palabra, palabras, nmeros, simbolos que indican el nuevo valor.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"lang="es" xml:lang="es"> <head> <title>Enlazando a un archivo .css</title> <link rel="stylesheet" type="text/css" href="general.css" /> </head> <body> <h1>Titulo Principal</h1> </body> </html>
y lo guardamos con un nombre por ejemplo (ejercicio.html) es muy importante agregar la extensin .html
Luego guardamos asignando un nombre, para nuestro ejemplo se llamara (general.css) no olvides agregar la extensin .css y guardarlo en el directorio donde est el documento (ejercicio.html). Finalmente abrimos con nuestro explorador web la pgina (ejercicio.html) y vemos el resultado donde la pagina tiene un color de fondo azul y texto de color blanco.
y lo llamaremos(general.css) es necesario que se guarde en el mismo directorio donde est el documento (ejercicio2.html). Finalmente abrimos con nuestro explorador web la pgina(ejercicio2.html) y vemos el resultado.
Ejemplo:
Primero debemos tener una pgina web con la estructura:
Ejemplo:
Para administrar el diseo CSS de manera optima, de sitios con 5, 10, 1000 o ms pginas, agregaremos CSS con link
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"lang="es" xml:lang="es"> <head> <title>Estilo incluido con STYLE incrustado </title> <style> <!-body{background:blue;color:white;} --> </style> </head> <body> <h1>Titulo Principal</h1> </body> </html>
Ejemplos:
h1 {color:red; } h2 {color:blue; } p {color:black;font-size:12px;} blockquote {font-size:12px;color:green;}
CSS en Lnea
los estilos se incrustan a cada etiqueta HTML mediante el atributo style=" ", esta forma de incluir el css no separa el contenido del diseo. Por lo cual se utiliza muy pocas veces, para definir estilos muy concretos
Cdigo CSS:
h1{color:red;} h2{color:blue;}
Ejemplo:
Mediante la regla de estilo "h1{color:red;}" estamos indicando que los ttulos dentro de las etiquetas <h1>... </h1> tendran texto de color rojo. Por otro lado, la regla de estilo "h2{color:blue;}" indica que los ttulos dentro de las etiquetas <h2>... </h2> tendran texto de color azul.
Cdigo HTML:
<h1">Titulo principal</h1> <h2">Subtitulo</h2>
Selector de Clase
El selector de clase proporciona un mayor control y precisin sobre la apariencia de los elementos HTML.
El nombre de una clase no puede empezar con nmeros, tampoco tener tildes, , ni espacios en blanco Ejemplo de creacin de selector de clase:
Crearemos en selector de clase para resaltar parrafos, y lo llamaremos .importantey escribiremos en la hoja de estilo o archivo CSS, de este modo:
Cdigo CSS:
.importante{color:red;}
Cdigo CSS:
.importante{color:red;}
Cdigo HTML:
<body> <p class="importante"> ... </p> <div class="importante"> ... </div> <h3 class="importante"> ... </div> </h3>
Cdigo HTML:
<body> <p class="importante"> ... </p> </body>
Cdigo HTML:
<body> <p class="importante justificado"> Este prrafo ser resaltado con texto de color rojo y tambien justificado</p> <p class="importante"> Este prrafo ser resaltado con texto de color rojo </p> </body>
Cdigo CSS:
.importante{color:red;}
Cdigo HTML:
<body> <p class="importante">Parrafo resaltado color rojo...</p> <p>Parrafo normal... </p> <p>Parrafo normal... </p> <p class="importante">Parrafo resaltado color rojo...</p> </body>
#menu{width:100px;float:left;} #cuerpo{width:600px;float:right;}
Cdigo HTML:
<body> <div id="contenedor">
<div id="cabecera"> ... </div> <div id="menu"> ... </div> <div id="cuerpo"> ... </div> </div> </body>
Cdigo CSS:
#contenedor{width:760px;}
Cdigo HTML:
<body> <div id="contenedor"> ... </div> </body>
Cdigo CSS:
p em{color:blue;}
Cdigo HTML:
<body> <p><em>texto 1</em>... </p> <div>...<em>texto 2</em>... </div> <p><span>...<em>texto 3</em>... </span></p> <em>texto 4</em> </body>
Cdigo CSS:
#contenedor{width:760px;} #cabecera{height:40px;background:blue;color:white;}
la palabra 'Texto 1' Est dentro de la etiqueta "em" y est contenido en "p". Por lo tanto,cumple con la regla de estilo del cdigo CSS. la palabra 'Texto 3' Est dentro de la etiqueta "em" y est contenido en "span" y este a su vez est dentro de "p". Por lo tanto, tambien cumple con la regla de estilo.
Las palabras 'Texto 2' y 'Texto 4' dentro de la etiqueta "em" no cumplen con la regla de estilo y el selector contextual no se aplica.
Cdigo CSS:
#contenido .destacado em{color:blue;}
Cdigo CSS:
div p strong{color:red;}
Cdigo HTML:
<div id="contenido"> <div class="destacado"><em>Texto 2</em></div> </div>
Cdigo HTML:
<div> <p><strong>Texto 1 </strong></p> </div> <div> <strong>Texto 2 </strong> </div>
la palabra 'Texto 1' Est dentro de la etiqueta "strong" y est contenido en "p" y este a su vez est dentro de "div". Por lo tanto,cumple con la regla de estilo la palabra 'Texto 2' Est dentro de la etiqueta "strong", pero est contenido directamente en "div". Por lo tanto, no cumple con la regla de estilo
La regla de estilo selecciona todos los elementos "em" que esten dentro de los (div con atributo class="destacado") y que tambin esten incluidos en los (div con atributo id="contenido").
Selector universal
El selector universal, selecciona todos los elementos sin excepcin.
Cdigo CSS:
Cdigo HTML:
<div> <ul> <li> Texto 1 </li> <li><a href=""> Texto 2 </a></li> <li> Texto 3 </li> </ul> </div>
Esta regla de estilo elimina los margenes y rellenos de los elementos HTML, que por defecto presentan los navegadores.
*{margin:0;padding:0;}
Es recomendable resetear o reiniciar todos las margenes y rellenos con el objeto de optimizar y reducir incompatibilidades en los navegadores.
solo la parte resaltada cumple con la condicin de la regla de estilo del cdigo CSS
Agrupando obtendriamos
.titulo, #contenedor h1, .cabecera h2 em, h3{color:#008800;}
Agrupando tenemos:
h1, p, h3{ font-family: arial }
Del mismo modo podemos agrupar selectores de clases, selectores ID o una combinacin de ambos
a) Palabras claves:
aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, purple, red, silver, teal, white y yellow.
Ejemplo:
body {color: white; background: blue;} h1 {color: maroon;} p {border-color: lime;}
Ejemplo:
strong {color: #f00;} /* #rgb */ /* #rrggbb */
lo cual es equivalente a:
#colum4 h1, p em{color:#008800;} em {color: #ff0000;}
Para generar una infinidad de colores recomendamos utilizar un pequeo programa para tal objeto, aqui tienes una herramienta que puedes descargar y utilizar gratuitamente Color Cop
a) Unidades relativas
Especifican su longitud en referencia a otra longitud. Estas son las unidades relativas: em, ex, px.
h2 {margin:0.2em;} div {margin:1ex;} P {font-size:12px;}
Colores en palabras clave ms usados: aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, purple, red, silver, teal, white, yellow, darkBlue, gold, magenta, yellowgreen.
Color especificacin RGB Hexadecimal.
Se expresa empezando por el simbolo '#' seguido inmediatamente por tres o seis caracteres hexadecimales. de este modo (#RRGGBB).
Donde: #RRGGBB
b) Unidades absolutas
Las unidades absolutas establecen de forma completa el valor de una medida.
H1 {margin: 0.5in} H2 {line-height: 3cm} /* inches (pulgadas) */ /* centmetros */ RR = red(rojo) GG = green(verde) BB = blue(azul)
Ejemplos
p { color: #FF0000;} p { color: #008000;} /* color rojo */ /* color verde */ /* color negro */
strong {font-size:2pc;}
p { color: #000000;}
Para generar colores RGB Hexadecimales, utilizaremos pequeosprogramas para generar colores
Color de Texto
Esta propiedad define el color de texto en parrafos, ttulos, listas, enlaces, etc. Un mismo color puede indicarse de varias formas:
Color de fondo
Para definir el color de fondo de los elementos que pueden ser parrafos, ttulos, bloques, enlaces, listas, etc. emplearemos la propiedad CSS background-color.
Cdigo CSS:
.imagen{background-image:url(fondo.jpg); width:430px; margin:0 auto; text-align:justify; color:#eee; padding:8px; }
Donde:
La propiedad background hace referencia a una imgen llamada 'fondo.jpg' que se aplicara al bloque llamado '.imagen'
Cdigo HTML:
Agregaremos el atributo class="imagen" al bloque o bloques que tendra una imagen como fondo:
Para modificar el color de fondo de todos los enlaces sin excepcin escribimos:
a{background-color:gray;}
<body> <div class="imagen"> Este bloque tendra una imgen como fondo </div> </body>
Para modificar el color de fondo solo de los enlaces 'A', que se encuentran dentro de los prrafos 'P', nos ayudamos de los selectores contextuales y escribimos:
p a{background-color:gray;}
Scroll
La imgen de fondo se mueve (hace scroll) junto con el contenido, "esta opcion es la predeterminada".
Ejemplo:
body{background-image:url(fig1.jpg);background-attachment:scroll;}
repeat
La imgen es repetida tanto horizontal como verticalmente.
body {background-image:url(fondo1.jpg);background-repeat:repeat;}
repeat-x Fixed
La imagen es repetida slo horizontalmente. La imgen tendra una posicin fija en relacion al contenido.
body{background-image:url(fondo1.jpg);background-repeat:repeat-x;}
repeat-y
La imagen es repetida slo verticalmente.
body{background-image:url(fondo1.jpg);background-repeat:repeat-y;}
Ejemplo:
body{background-image:url(fig1.jpg);background-attachment:fixed;}
0% 0%
center top
Posicin (arriba izquierda) 50% 0% Posicin (arriba centro) left center left center center center center left 50% 50% 0% 50% Posicin (centro) Posicin (izquierda centro) bottom bottom left bottom center left bottom center bottom 0% 100% 50% 100% Posicin (abajo derecha) Posicin (abajo centro)
right right center center right 100% 50% Posicin (derecha centro)
Propiedades de Fuente
Tamao de fuente
La propiedad font-size, indica el Tamao de la fuente de los parrafos, titulos, listas, enlaces, etc.
Ejemplo
p { font-size:14px;}
Mediante la propiedad background se puede definir una propiedad, dos propiedades o todas las propiedades. Definiendo solo color de fondo
Opcionalmente se puede utilizar la propiedad 'background' para aplicar solo el color de fondo.
body {background:#3333ff;}
Familia de fuente
La propiedad font-family, indica el tipo de familia de fuente que se utilizara en los prrafos, listas, ttulos, enlaces y otros textos.
la propiedad font-weight puede tomar los siguientes valores: normal, bold, bolder, lighter, 100, 200, ..., 900 Indicado el peso de fuente bold
El peso bold equivale a marcar como (negrita): este valor es el ms utilizado, por ejemplo:
h4 {font-weight:bold;}
Las familias de fuentes se separan por una coma(,) Aplicando una fuente Times New Roman
Primero escribimos la fuente especfica, en este caso Times New Roman,seguido de una fuente alternativa parecida(Times) y acompaado de la fuente generica serif.
p { font-family: "Times New Roman", Times, serif;}
Donde: indicamos un estilo de fuente normal con tamao de fuente de 62.5% y familia de fuente "Lucida Sans Unicode",sans-serif;
Los nombres de fuentes que contengan espacios en blanco se escribiran entre comillas("") Lista de Familias de fuentes ms utilizadas en la Web
font-family: Arial, Helvetica, sans-serif; font-family: Helvetica, sans-serif; font-family: "Lucida Sans Unicode",sans-serif; font-family: "Times New Roman", Times, serif; font-family: Georgia, "Times New Roman", Times, serif; font-family: Verdana, Arial, Helvetica, sans-serif; font-family:"Trebuchet MS",Arial, Helvetica, sans-serif; font-family: "Courier New", Courier, monospace; body {font-weight: bold; font-size: 22px; line-height: 25px; font-family: "Trebuchet MS",Arial,Helvetica,sans-serif;}
Peso de fuente
La propiedad css font-weight se usa para especificar el peso o volumen de la fuente.
Donde: definimos un tamao de texto de 22px con line-heigth(interlineado) de 25px y familia de fuente "Trebuchet MS",Arial,Helvetica,sans-serif;
Ejemplo: T
e x t o
c o n
l e t t e r - s p a c i n g
h2 {letter-spacing: 0.1em}
text-transform:none (Ninguno)
Nota el subrayado generalmente indica enlace por lo que se debe usar con cuidado para evitar confusiones neutraliza el valor heredado
Ejemplo:
h1 em{text-transform:none;}
Propiedades de cuadro
Ancho (width)
Esta propiedad indica el ancho de los elementos en bloque, si no se especifica un valor para esta propiedad tendra como medida inicial el valor auto.
La propiedad text-align se aplica a los elementos de nivel bloque para alinear el texto contenido.
Si no se indica explicitamente el ancho de un elemento bloque este ocupa todo el ancho de la pgina o del elemento que lo contiene. Elemento sin especificar el ancho
Primero veamos como actua un elemento si no se le indica la propiedad Width
Cdigo CSS:
div {padding:8px;background:#eee;}
Resultado:
Cdigo CSS:
div {width:260px;padding:8px;background:#eee;}
p{text-align:justify;}
Resultado:
Este bloque tiene un ancho de 260px
La propiedad height determina la altura de los elementos en bloque, si no se especifica un valor para esta propiedad tendra como medida inicial el valor auto.
Si no se indica explicitamente la altura Height de un elemento bloque este dependera del contenido del elemento. Elemento sin especificar altura
Primero veamos como actua un elemento si no se le indica la propiedad Height
Ejemplo:
p { text-indent: 2em }
Cdigo CSS:
div {padding:8px;background:#DFE4EA;}
Aplicaremos un valor de 3em a los mrgenes superior e inferior y 5em para el margen izquierdo y derecho.
div {margin:3em 5em;}
Resultado:
Este bloque no tiene indicado la altura y dependera del contenido que tiene el bloque
Cdigo CSS:
div {height:90px;padding:8px;background:#DFE4EA;}
Ejemplo:
Aplicaremos un valor de 2em al mrgen superior, a los margenes izquierdo y derecho asignaremos 4em y al margen inferior le damos un valor de 5em.
div {margin:2em 4em 5em;}
Resultado:
Este bloque tiene un altura de 90px
Generalmente esta propiedad se aplica a elementos con una altura esttica como la cabecera de un sitio web, mientras que la parte del contenido de un sitio web, no tendra definido una altura, dejando que este se acomode de acuerdo a la cantidad del contenido.
Margen (margin)
Asigna un margen o espacio fuera del elemento. Se pueden aplicar de diferentes formas de acuerdo a las necesidades.
Ejemplo:
Aplicaremos un valor de 1em al mrgen superior, 3em al derecho, cero al inferior y 7em al izquierdo.
div {margin:1em 3em 0 7em;}
Ejemplo:
Asignaremos un valor de 2em a los cuatro margenes del cuadro.
Ejemplo:
Aplicaremos un valor de 1em al mrgen superior.
h1 {margin-top:1em;}
Ejemplo:
Aplicaremos un valor de 3em a los rellenos superior e inferior y 5em para el relleno izquierdo y derecho.
div {padding:3em 5em;}
Ejemplo:
Aplicaremos un valor de 2em al relleno superior, a los rellenos izquierdo y derecho asignaremos 4em y al relleno inferior le damos un valor de 5em.
div {padding:2em 4em 5em;}
Relleno (Padding)
El padding de un elemento es la cantidad de espacio entre el borde y el contenido del elemento, hacia dentro.
Si hay cuatro valores el primero se aplica al relleno superior, el segundo al relleno derecho, el tercero al relleno inferior, y el cuarto al relleno izquierdo.
Ejemplo:
Aplicaremos un valor de 1em al relleno superior, 3em al derecho, cero al inferior y 7em al izquierdo.
div {padding:1em 3em 0 7em;}
Cdigo CSS:
div {padding:1em;}
Resultado:
Este bloque tiene un relleno (padding de 1em) distribuido de forma homogenea en los cuatro lados del bloque.
Ejemplo:
thin (delgado) medium (mediano) thick (grueso) Sin embargo esta medida es muy restringida y para tener mayor precisin en las medidas del borde utilizaremos tanto las medidas absolutas y relativas: unidades relativas: em, ex, px y % unidades absolutas: in, pt, pc, cm, mm, entre otros
solid (lnea continua) dotted (borde punteado) dashed (lineas entrecortadas) none (ninguno) double (borde doble)
groove (tallado) ridge (efecto 3d ) inset (bajorrelieve) outset (altorrelieve) Color de borde
Se puede definir el color del borde mediante Palabras clave:
Donde:
1px (Ancho de borde) solid (Estilo de borde) blue (Color de borde)
Ejemplo:
blue, red, yellow, orange, etc. Con las palabras claves anteriores se puede obtener un nmero limitado de colores, para generar ms variedad de colores emplearemos La especificacin numrica RGB Hexadecimal que es la ms utilizada en la web: Especificacin numrica RGB Hexadecimal Ejemplo:
#0000ff equivale (azul)
Resultado:
Este bloque tiene un borde con estilo SOLID, ancho de borde 1PX y color de borde azul
Ancho de borde
Se puede definir el ancho del borde mediante las siguientes palabras clave:
Para generar muchos colores, tonalidades y copiar colores de pantalla y convertirlos automaticamente en RGB Hexadecimal, podemos utilizar un pequeo programa gratuito para tal objeto, como Color Cop, Hexagrab, etc. y que son de mucha utilidad en el diseo web. Ahora que conocemos las formas de aplicar el ancho del borde, los estilos y contamos con un programa para generar colores veamos ms ejemplos:
div {border:3px solid #0000FF;} h2 {border:1px dotted #000000;} h4 {border:1px groove #800000;} h1 {border:2px inset #80FF80;}
un valor: Establece el valor del ancho de los cuatro bordes. dos valores: el primer valor se asigna al ancho de los bordes superior e inferior y el segundo establece el valor de los bordes derecho e izquierdo. tres valores: el primer valor corresponde al borde superior, el segundo a los bordes derecho e izquierdo, y el tercero al inferior. cuatro valores:se asigna empezando del borde superior, derecho, inferior e izquierdo respectivamente
borde derecho
border-right, define el ancho, estilo y color del borde derecho.
div {border-right:1px solid #0000FF;}
div{border-width:1px;border-color:#000000;border-style:solid;}
borde inferior
border-bottom, Es una propiedad abreviada para definir el ancho, estilo y color del borde inferior de un elemento.
div {border-bottom:1px solid #000000;}
borde izquierdo
border-left, define el ancho, estilo y color del borde izquierdo.
div {border-left:1px solid #000000;}
Color de borde
border-color, es una propiedad abreviada para establecer el color de los bordes, tiene entre uno y cuatro valores, interpretndose de la siguiente manera:
Estilos de borde
Mediante la propiedad border-style, controlamos el estilo de borde deseado que sera aplicado a un elemento CSS proporciona los siguientes estilos de borde:
un valor: Define el color de los cuatro bordes. dos valores: el primer valor asigna el color de los bordes superior e inferior y el segundo establece el valor de los bordes derecho e izquierdo. tres valores: el primer valor indica el color del borde superior, el segundo de los bordes derecho e izquierdo, y el tercero del inferior. cuatro valores:Asigna el valor del color empezando del borde superior, derecho, inferior e izquierdo respectivamente.
solid (lnea continua) dotted (borde punteado) dashed (lineas entrecortadas) none (ninguno) double (borde doble) groove (tallado) ridge (efecto 3d ) inset (bajorrelieve) outset (altorrelieve) Propiedad border-color
La propiedad border-color, puede tener de uno a cuatro valores, interpretndose de la siguiente manera:
un valor: Define el estilo de los cuatro bordes. dos valores: el primer valor asigna el estilo de los bordes superior e inferior y el segundo establece el valor de los bordes derecho e izquierdo. tres valores: el primer valor indica el estilo del borde superior, el segundo de los bordes derecho e izquierdo, y el tercero del inferior. cuatro valores:Asigna el valor del estilo de lnea empezando del borde superior, derecho, inferior e izquierdo respectivamente.
border-style:solid dotted;}
Borde
Cdigo CSS:
h2 {border-left: 8px solid #FF9933; background-color:#E6FFE6; padding:5px;font-size:19px;color:#F47A00;}
El resultado es:
Cdigo HTML:
<ul> <li><a href="#"> Enlace 1 </a></li> <li><a href="#"> Enlace 2 </a></li> <li><a href="#"> Enlace 3 </a></li> </ul>
El resultado es:
Borde de 2px, estilo Solido, color verde
Cdigo CSS:
Las propiedades para modificar la apariencia de los enlaces o links, se aplican al elemento a. Por ejemplo, si deseamos cambiar el color azul predeterminado a uno verde escribimos:
a {color:green;}
El resultado es:
Cdigo CSS:
a{color:green;} a:hover {color:red;} a:active {color:yellow;}
Cambiar color cuando el puntero del raton pasa o esta sobre el enlace
Un efecto muy utilizado es cambiar el comportamiento del enlace cuando el cursor o puntero del ratn pasa por encima. Para lo cual se utiliza la pseudo-clase :hovercuando el cursor se coloca o pasa sobre el enlace.
Cdigo HTML:
<ul> <li><a href="#"> Enlace 1 </a></li> <li><a href="#"> Enlace 2 </a></li> <li><a href="#"> Enlace 3 </a></li> </ul>
La propiedad float, Con un valor 'left' desplazara el elemento a la izquierda. Con un valor 'right' ser movido a la derecha y con el valor 'none', ser mostrado en el lugar original. Flotando dos bloques
Generando dos bloques sin la propiedad Float
Generamos dos cuadros o cajas, aadimos ancho, alto y un color de fondo para diferenciarlos.
Cdigo CSS:
a{color:green;} a:hover{color:red;}
Cdigo HTML:
<div class="cuadro1">cuadro1 ...</div> <div class="cuadro2">cuadro2 ...</div>
Ver resultado
Cdigo CSS:
.cuadro1 {height:250px;width:290px; background-color:#FF8000; color:#ffffff;} .cuadro2 {height:250px;width:290px;
Cdigo HTML:
<ul> <li><a href="#"> Enlace 1 </a></li> <li><a href="#"> Enlace 2 </a></li> <li><a href="#"> Enlace 3 </a></li> </ul>
background-color:#0000FF; color:#ffffff;}
Ver ejemplo
Como podras ver la segunda caja se desplaza hacia abajo.
los enlaces tendran color verde, al pasar sobre ellos color rojo y al hacer clic o acivar el enlace tendra color amarillo.
Cdigo HTML:
<div class="cuadro1">cuadro1 ...</div> <div class="cuadro2">cuadro2 ...</div>
Cdigo CSS:
.cuadro1 {height:250px;width:290px; float:left; background-color:#FF8000; color:#ffffff;} .cuadro2 {height:250px;width:290px; float:left; background-color:#0000FF; color:#FFFFFF;}
Posicionamiento CSS
Despejando con CSS
La propiedad Clear, obliga desplazar los elementos flotantes de sus lados. despejando segun el valor de la propiedad.
Ver ejemplo
Cdigo HTML:
<div class="cuadro1">cuadro1 ...</div> <div class="cuadro2">cuadro2 ...</div> <div class="cuadro2">cuadro3 ...</div>
Cdigo CSS:
.cuadro1 {height:250px;width:290px; float:left; background-color:#FF8000; color:#ffffff;} .cuadro2 {height:250px;width:290px; float:left; background-color:#0000FF; color:#ffffff;} .cuadro3 {height:250px;width:290px; float:left; background-color:#008000;
Ejercicio 02:
Modifique los valores de la propiedad float; Valor right para .cuadro1 y valor left para .cuadro2
color:#ffffff;}
ver ejemplo
Cdigo CSS:
.cuadro1 {height:250px;width:290px; float:left; background-color:#FF8000; color:#ffffff;} .cuadro2 {height:250px;width:290px; float:left; background-color:#0000FF; color:#ffffff;} .cuadro3 {height:250px;width:290px; float:left;clear:both; background-color:#008000; color:#ffffff;}
ver ejemplo
Agregando la propiedad position con valor relative
posicionaremos de forma relativa el primer bloque, y lo desplazamos hacia la derecha y hacia abajo, notar que el lugar antes ocupado permanece como si elemento no hubiese sido movido.
Cdigo HTML:
<div class="cuadro1">bloque1 ...</div> <div class="cuadro2">bloque2 ...</div> <div class="cuadro2">bloque3 ...</div>
Cdigo CSS:
.cuadro1 {height:250px;width:290px;
Posicionamiento relativo
Es un posicionamiento calculado a partir de otro elemento. la caracteristica de este tipo de posicionamiento es que el elemento sigue ocupando el espacio despus de haberse sido posicionado.
position:relative;top:90px;left:80px; background-color:#FF8000; color:#ffffff;} .cuadro2 {height:250px;width:290px; background-color:#0000FF; color:#ffffff;} .cuadro3 {height:250px;width:290px; background-color:#008000; color:#ffffff;}
Cdigo HTML:
<div class="cuadro1">bloque1 ...</div> <div class="cuadro2">bloque2 ...</div> <div class="cuadro2">bloque3 ...</div>
Posicionamiento absoluto
Los elementos que se posicionan de forma absoluta son extraidos del documento, sin dejar espacio vaco despus de ser posicionado.
Cdigo CSS:
.cuadro1 {height:250px;width:290px; background-color:#FF8000; color:#ffffff;}
Para posicionar de forma absoluta cajas, bloques u otros elementos, la propiedad Position tendra el valor absolute, acompaado de las propiedades left(izquierdo), right(derecho), top(superior), y bottom(inferior) para colocar la caja de forma precisa.
background-color:#008000; color:#ffffff;}
Cdigo HTML:
<div class="cuadro1">bloque1 ...</div> <div class="cuadro2">bloque2 ...</div> <div class="cuadro2">bloque3 ...</div>
Cdigo CSS:
.cuadro1 {height:250px;width:290px; background-color:#FF8000; color:#ffffff;} .cuadro2 {height:250px;width:290px; background-color:#0000FF; color:#ffffff;} .cuadro3 {height:250px;width:290px; background-color:#008000; color:#ffffff;}
ver ejemplo
Agregando la propiedad position con valor absolute
Posicionaremos de forma absoluta el primer bloque, y lo desplazamos hacia la derecha y hacia abajo, notar que el lugar antes ocupado esta vez si es ocupado por los otros elementos.
Cdigo HTML:
<div class="cuadro1">bloque1 ...</div> <div class="cuadro2">bloque2 ...</div> <div class="cuadro2">bloque3 ...</div>
Cdigo CSS:
.cuadro1 {height:250px;width:290px; position:absolute;top:90px;left:80px; background-color:#FF8000; color:#ffffff;} .cuadro2 {height:250px;width:290px; background-color:#0000FF; color:#ffffff;} .cuadro3 {height:250px;width:290px;
Hoja de Estilo
* {text-indent:0px; margin:0px; padding:0px; border:0px;} p {text-align:justify} h1 {font-size:1.2em; color:blue; font-weight:bold; textdecoration:underline; text-align:center;} h2 {font.size:1.1em; color:blue; font-weight:bold; text-decoration:none; text-align:center;} body {text-align:center;} #global {width:800px; margin:4px auto;} #curva-superior {background-image:url(objetos/curva-superior.gif); background-repeat:no-repeat; width:800px; height:12px; overflow:hidden;} #cabecera {background-color:white; border-left:black 1px solid; border-right:black 1px solid; height:85px;} #logotipo {width:280px; float:left;} #publicidad {width:518px; float:right; margin-top:25px; font-size:16px;} #navegacion {background-color:gray; border:black 1px solid; height:20px;} #navegacion li {float:left; list-style:none; margin:0px 20px 0px 20px;} #navegacion ul {margin-left:180px;} #contenido {background-color:orange; border-left:black 1px solid; border-right:black 1px solid;} #contenido p {margin:5px 10px 0px 10px; text-indent:15px;} #menu {background-color:yellow; width:150px; float:left; text-align:left; margin:3px 10px 3px 3px;} #menu li {list-style:none; margin:4px 0px 4px 6px;} #menu h1 {text-decoration:none; font-size:10px;} #pie {background-color:white; border-left:black 1px solid; border-right:black 1px solid; border-top:black 1px solid;} #curva-inferior {background-image:url(objetos/curva-inferior.gif); background-repeat:no-repeat; width:800px; height:12px; overflow:hidden;} a {color:brown; text-decoration:none; display:block;} a:link {} a:visited {} a:hover {color:red; text-decoration:underline; background-color:silver;} a:active {}
Archivo HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Page title</title> <link rel="stylesheet" href="estilo-general.css" type="text/css" media="all"> </head> <body> <div id="global"> <div id="curva-superior"></div> <div id="cabecera"> <div id="logotipo"><a href="index.html"><img src="objetos/logotipo.gif" width="270px" height="80px" alt="Haz clic aqu para volver a la pgina de inicio"></a></div> <div id="publicidad">Bienvenidos a mi Web</div> </div> <div id="navegacion"> <ul> <li><a href="#">Seccin 1</a></li> <li><a href="#">Seccin 2</a></li> <li><a href="#">Seccin 3</a></li> </ul> </div> <div id="contenido"> <div id="menu"> <h1>Ttulo de Seccin 1</h1> <ul><li><a href="#">Enlace 1</a></li><li><a href="#">Enlace 2</a></li><li> <a href="#">Enlace 3</a></li><li><a href="#">Enlace 4</a></li></ul> </div> <h1>Esta ser la zona principal de la web</h1> <p>Este es mi segundo prrafo. Acabo de poner un punto y en cambio sigue siendo un prrafo pues no le he colocado an la etiqueta de cierre. Voy a ponersela justo aqu.</p> <h2>Y este es el tercer prrafo.</h2> <p>En pocas lecciones aprender a darle margenes para separarlos unos de otros, e incluso hacerles sanguias por la izquierda a la primera lnea, que queda mucho mejor.</p> <p>Anda, fijate! Salen todos centrados, que cosa. Espero que Jorgens nos ensee a ponerlos alineados a la izquierda, o justificados. As esto parece
una poesia! je je je.</p> </div> <div id="pie">Este es el pi de pgina</div> <div id="curva-inferior"></div> </div> </body> </html>