Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Impreso en España
TEMA 2. DIV`s
1. TABLAS O DIV
2. COLOCAR LOS DIV
PRACTICA 000_DIV (Un DIV al lado del otro)
PRACTICA 001_DIV (Un DIV al de otro y uno debajo)
PRACTICA 002_DIV (Un DIV inferior)
CLEAR
Z-INDEX
POSITION
PADDING
MARGIN
PRACTICA (Página web con DIV y CSS)
conchi.marcos@me.com 4
TEMA 1. CSS EN EL DISEÑO WEB
CSS es un lenguaje de hojas de estilos creado para controlar el aspecto o
presentación de los documentos electrónicos definidos con HTML y XHTML.
CSS es la mejor forma de separar los contenidos y su presentación y es
imprescindible para crear paginas web complejas.
1. INTRODUCCIÓN
Al crear una pagina web, se utiliza en primer lugar el lenguaje HTML/XHTML para
marcar los contenidos, es decir, para designar la función de cada elemento dentro de
la pagina: párrafo, titular, texto destacado, tabla, lista de elementos, etc.
Una vez creados los contenidos, se utiliza el lenguaje CSS para definir el aspecto de
cada elemento: color, tamaño y tipo de letra del texto, separación horizontal y vertical
entre elementos, posición de cada elemento dentro de la pagina, etc.
2. FUNCIONES Y CARÁCTERÍSTICAS.
Antes de la adopción de CSS, los diseñadores de paginas web debían definir el
aspecto de cada elemento dentro de las etiquetas HTML de la pagina.
2.1 PROPIEDADES Y VALORES.
Tipografía.
COLOR, el color que se aplica para el texto.
FONT-FAMILY, establece el tipo de letra utilizado para el texto.
FONT-SIZE, tamaño de la letra usado para el texto.
FONT-WEIGHT, anchura de la letra utilizada para el texto.
FONT-STYLE, estilo de letra usado para el texto.
FONT-VARIANT, establece el estilo alternativo de la letra usada para el
texto.
FONT, indica de forma directa todas las propiedades de la tipografía de
un texto.
conchi.marcos@me.com 5
3. OPTIMIZACIÓN DE LAS HOJAS DE ESTILO
CSS ShortHands
<background>
Formato corto
.class {
background-image: url(image.jpg);
background-repeat: no-repeat;
background-attachment: fixed;
background-position: 0 10px;
background-color: #ffffff; }
Formato largo
conchi.marcos@me.com 6
<font>
Formato corto
.class {
font-style: italic;
font-variant: normal;
font-weight: bold;
font-size: 12px;
line-height: 16px;
font-family: Arial; }
Formato largo
.class { font: italic bold 12px/16px Arial; }
<border>
Formato corto
.class {
border-width: 2px;
border-style: solid;
border-color: #cccccc; }
Formato largo
conchi.marcos@me.com 7
<margin>
Formato largo
.class {
margin-top: 12px;
margin-right: 15px;
margin-bottom: 5px;
margin-left: 20px; }
Formato corto
<padding>
Formato largo
.class {
padding-top: 12px;
padding-right: 15px;
padding-bottom: 5px;
padding-left: 20px; }
Formato corto
conchi.marcos@me.com 8
<list>
Formato largo
.class {
list-style-type: circle;
list-style-position: outside;
list-style-image: url(image.png); }
Formato corto
Formato normal
h1 { padding: 5px 0; font-weight:700; }
h2 { padding: 5px 0; font-weight:700; }
Agrupado
h1, h2 { padding: 5px 0; font-weight:700; }
Formato normal
Agrupado
li.home, li.about, li.contact {background: url(img/sprite.png)
0 0 no-repeat transparente;}
li.about {background-position: 0 -50px;}
li.contact {background-position: 0 -100px;}
conchi.marcos@me.com 9
Omite ceros y unidades de medidas innecesarias
Antes Después
margin: 15.0em; margin: 15em;
padding: 0.1em; padding: .1em;
Antes Después
margin: 0px; margin: 0;
Es mejor que una vez que cada una las hojas de estilo estén comprimidas y
optimizadas, con alguna de las herramientas comentadas anteriormente,
unificarlas en un único archivo .css, de esa forma sólo se hará una única petición
al servidor en vez de muchas.
CONCHI.MARCOS@ME.COM 10
USABILIDAD DE LOS SELECTORES EN CSS _______________
ETIQUETAS HTML
/*Le decimos a la etiqueta body que centre el texto y tenga un
fondo de color negro*/
body{
text-align:center;
background-color:#ffffff;
}
CONCHI.MARCOS@ME.COM 11
/*Aquí utilizaremos tanto una etiqueta como una clase, en este
caso decimos que los parrafos que estén en la clase primera se
alineen al centro*/
p.primera{
text-align:center;
}
CONCHI.MARCOS@ME.COM 12
PRACTICA 008 _____________________________________
WEB CON ENLACE A CSS EXTERNO
CONCHI.MARCOS@ME.COM 13
2º Paso. Comenzamos a definir el CSS
CONCHI.MARCOS@ME.COM 14
2º Paso. Comenzamos a definir el CSS
CONCHI.MARCOS@ME.COM 15
TEMA 2. DIV
1.TABLAS O DIV
La antigua técnica para maquetar una página, se basaba en tablas. Sin
duda, en su momento fue una herramienta útil. Sin embargo, a medida
que la Web ha venido evolucionando, esta misma técnica ha sido la
culpable de muchos problemas para los webmaster.
conchi.marcos@me.com 16
2. COLOCAR LOS DIV
Existen diferentes formas de colocar los DIV, es importante tenerlo claro, para ello
vamos a ver algunos ejemplos prácticos:
HTLM
<div id=”div1″>Texto que va en el div1</div>
<div id=”div2″>Texto que va en el div2</div>
CSS (en este caso usamos left y le ponemos un color de fondo para
diferenciar bien el resultado)
#div1{
float:left;
background:yellow;
}
#div2{
float:left;
Background:blue;
}
CONCHI.MARCOS@ME.COM 17
PRACTICA 001_DIV _____________________________________
Un DIV al lado de otro y otro debajo…
Digamos que queremos que un div no siga siendo alado, para que quede
abajo… le damos la propiedad clear:both; nos dará un resultado
asi:
HTML
<div id="div1">Hola Caracola</div>
<div id="div2">Adiós Caracola</div>
<div id="div3">Otra Caracola</div>
CSS (en este caso usamos left y le ponemos un color de fondo para
diferenciar bien el resultado)
#div1{
float:left;
background:yellow;
}
#div2{
float:left;
Background:blue;
}
#div3{
clear:both;
background:orange;
}
CONCHI.MARCOS@ME.COM 18
PRACTICA 002_DIV _____________________________________
Un DIV inferior.
HTML
<div id="superior">Hola Caracola</div>
<div id="inferior">Abajo....</div>
CSS
body,html{
height:100%;
/*Siempre es necesario cuando trabajamos con
alturas*/
}
#pie{
color: #FFF;
background: #000;
position:absolute;
/*El div será ubicado con relación a la pantalla*/
left:0px;
/*A la derecha deje un espacio de 0px*/
right:0px;
/*A la izquierda deje un espacio de 0px*/
bottom:0px;
/*Abajo deje un espacio de 0px*/
height:50px;
/*alto del div*/
z-index:0;
}
CONCHI.MARCOS@ME.COM 19
PRACTICA 002_DIV _____________________________________
Un DIV inferior.
HTML
<div id="superior">Hola Caracola</div>
<div id="inferior">Abajo....</div>
CSS
body,html{
height:100%;
/*Siempre es necesario cuando trabajamos con
alturas*/
}
#pie{
color: #FFF;
background: #000;
position:absolute;
/*El div será ubicado con relación a la pantalla*/
left:0px;
/*A la derecha deje un espacio de 0px*/
right:0px;
/*A la izquierda deje un espacio de 0px*/
bottom:0px;
/*Abajo deje un espacio de 0px*/
height:50px;
/*alto del div*/
z-index:0;
}
CONCHI.MARCOS@ME.COM 20
- POSITION
Posiciona los elementos de forma normal, relativa, absoluta o fija. Igual que
<float> permite modificar la posición de cualquier elemento de la
página. Las cuatro opciones que tendremos son static, relative,
absolute y fixed.
En la posición fixed lo que conseguimos que ese div no se mueva en
ningun momento, que quede fijado en un sitio aunque el scroll del
navegador siga bajando.
STATIC. RELATIVE ABSOLUTE
conchi.marcos@me.com 21
- MARGIN
CSS define cuatro propiedades para controlar cada uno de los márgenes
horizontales y verticales de un elemento. Se aplica a todos los elementos, si
se utilizan porcentajes, hace referencia a la anchura del elemento en el que
se encuentra
- FLOATING
conchi.marcos@me.com 22
- DISPLAY
conchi.marcos@me.com 23
- PADDING
CSS define cuatro propiedades para controlar cada uno de los márgenes
horizontales y verticales de un elemento.
Se aplica a todos los elementos, salvo margin-top y margin-bottom
que sólo se aplican a los elementos de bloque y a las imágenes
conchi.marcos@me.com 24
- CLEAR
La propiedad clear indica el lado o lados de una caja que no debe ser
adyacente a un elemento posicionado de forma flotante con la propiedad float.
Los cuatro valores permitidos para esta propiedad tienen el siguiente significado:
left, hace que la caja sobre la que se aplica baje hasta que su borde
superior esté por debajo del borde inferior de cualquier elemento flotado a la
izquierda.
right, hace que la caja sobre la que se aplica baje hasta que su borde
superior esté por debajo del borde inferior de cualquier elemento flotado a la
derecha.
both, hace que la caja sobre la que se aplica baje hasta que su borde
superior esté por debajo del borde inferior de cualquier elemento flotado a la
izquierda o a la derecha.
none, es el valor por defecto que se aplica a todos los elementos y no
tiene efecto sobre la posición de la caja.
conchi.marcos@me.com 25
- Z-INDEX
Con la propiedad Z-INDEX lo que conseguimos es dar una situación tipo
“capas” a cada uno de los <div> que estamos creando, numerándose
z-index1, z-index2,… siendo la de mayor numeración la que esta
más superpuesta.
Lo habitual es utilizar el valor de opacidad para conseguir un efecto
traslucido en la “capa”.
conchi.marcos@me.com 26
- BORDER
La propiedad border permite definir de un golpe todos los bordes en una
única regla de la hoja de estilos. Se puede utilizar border para definir el o
los valores siguientes: border-width , border-style , border-color,…
Establece algunas o todas las propiedades de todos los bordes de los
elementos
conchi.marcos@me.com 27
PRACTICA 003 _____________________________________
TRABAJANDO CON POSITION Y Z-INDEX
001. En primer lugar haremos la estructura en html del documento que queremos
crear:
<html>
<head>
<title>EJERCICIO FLOAT Y Z-INDEZ - PRACTICA 003</title>
<link rel="stylesheet" type="text/css" href="css/estilo.css">
</head>
<body>
<div id="abuelo">#abuelo</div>
<div id="padre">#padre</div>
<div id="hija">#hija</div>
<div id="nieta">#nieta</div>
</body>
</html>
CONCHI.MARCOS@ME.COM 28
002. El documento CSS que crearemos es el siguiente:
@charset "utf-8";
body{
width:1200px;
height:800px;
margin:0 auto;
}
#abuelo{
background-color:grey;
width:500px;
height:500px;
position:absolute;
border:5px solid red;
border-spacing:10px;
}
#padre{
background-color:orange;
z-index:1;
width:350px;
height:350px;
position:absolute;
top:75px;
left:75px;
}
#hija{
background-color:olive;
position:absolute;
width:250px;
height:250px;
z-index:2;
top:125px;
left:125px;
}
#nieta{
background-color:fuchsia;
position:absolute;
width:100px;
height:100px;
z-index:3;
top:200px;
left:200px;
}
div{
font-family:calibri;
color:white;
font-size:16px;
}
CONCHI.MARCOS@ME.COM 29
PRACTICA 011 _____________________________________
PAGINA WEB CON DIV Y CSS
001. En primer lugar haremos la estructura web:
<html>
<head>
<title>PRACTICA 011</title>
</head>
<body>
<div id="pagina">
<div id="cabecera">
<!-- Aquí vendrá el cabecero de la página -->
</div>
<div id="conjunto">
<!-- Agruparemos el contenido del menu y contenido -->
<div id="menu">
<!-- Aquí tendremos el menu de la web -->
</div>
<div id="contenido">
<!-- Irá el contenido de la página -->
</div>
</div>
</div>
<div id="pie">
<!-- En este apartado irá el pie de página -->
</div>
</body>
</html>
CONCHI.MARCOS@ME.COM 30
002. Vamos a comenzar a meter contenidos en página, listas y encabezados:
<html>
<head>
<title>PRACTICA 011</title>
</head>
<body>
<div id="pagina">
<div id="cabecera">
<!-- Aquí vendrá el cabecero de la página -->
<h1>Blog de Fotografías</h1>
<h2>Autora: Conchi Marcos</h2>
</div>
<div id="conjunto">
<!-- Agruparemos el contenido del menu y contenido -->
<div id="menu">
<!-- Aquí tendremos el menu de la web -->
<h3>Menu</h3>
<ul>
<li><a>Home</a></li>
<li><a>Paisajes</a></li>
<li><a>Animales</a></li>
<li><a>Gente</a></li>
<li><a>Contacto</a></li>
</ul>
</div>
<div id="contenido">
<!-- Irá el contenido de la página -->
<h3>Bienvenidos a mi nueva pagina donde mostraré mis <span>últimas fotos.</span>
Espero ir mejorando con los meses y que las calidades de las mismas se
superen.</h3>
</div>
</div>
</div>
<div id="pie">
<!-- En este apartado irá el pie de página -->
<h2>ULTIMAS FOTOGRAFÍAS</h2>
<div id="fotos">
<div id="foto1">Fotografia 1</div>
<div id="foto2">Fotografia 2</div>
<div id="foto3">Fotografia 3</div>
<div id="foto4">Fotografia 4</div>
<div id="foto5">Fotografia 5</div>
<div id="foto6">Fotografia 6</div>
</div>
<p>Todos los derechos reservados</p>
</div>
</body>
</html>
CONCHI.MARCOS@ME.COM 31
PRACTICA 001 - Selectores
Vamos a crear un documento HTML en el que aplicaremos los
SELECTORES que indicamos a continuación.
conchi.marcos@me.com 32
<html>
<head>
<div id="primero">
<div class="normal">
</body>
</html>
conchi.marcos@me.com 33
/* Todos los elementos de la pagina */ * { font: 1em/1.3 Arial, Helvetica, sans-serif; } /* Todos los párrafos de la pagina */
conchi.marcos@me.com 34
PRACTICA 002 – Selectores2
Vamos a crear un documento HTML en el que aplicaremos los SELECTORES2 que indicamos
a continuación.
{color: blue;}
conchi.marcos@me.com 35
A continuación se muestra el código HTML de la página sin estilos:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>PRACTICA 002</title>
</head>
<body>
<h1 id="titulo">Lorem ipsum dolor sit amet</h1>
<p>Nulla pretium. Sed tempus nunc vitae neque. <strong>Suspendisse gravida</strong>, metus a
scelerisque sollicitudin, lacus velit ultricies nisl, nonummy tempus neque diam quis felis.
<span class="destacado">Etiam sagittis tortor</span> sed arcu sagittis tristique.</p>
<p>Vivamus velit dui, placerat vel, feugiat in, ornare et, urna. <a href="#">Aenean turpis
metus, <em>aliquam non</em>, tristique in</a>, pretium varius, sapien. Proin vitae nisi.
Suspendisse <span class="especial">porttitor purus ac elit</span>. Suspendisse eleifend odio
at dui. In in elit sed metus pretium elementum.</p>
<tfoot>
<tr>
<th scope="col"></th>
<th scope="col">Título columna 1</th>
<th scope="col">Título columna 2</th>
</tr>
</tfoot>
<tbody>
<tr>
<th scope="row" class="especial">Título fila 1</th>
<td>Donec purus ipsum</td>
<td>Curabitur <em>blandit</em></td>
</tr>
<tr>
<th scope="row">Título fila 2</th>
<td>Donec <strong>purus ipsum</strong></td>
<td>Curabitur blandit</td>
</tr>
</tbody>
</table>
<div id="adicional">
<p>Donec purus ipsum, posuere id, venenatis at, <span>placerat ac, lorem</span>. Curabitur
blandit, eros sed gravida aliquet, risus justo
porta lorem, ut mollis lectus tortor in orci. Pellentesque nec augue.</p>
<p>Fusce nec felis eu diam pretium adipiscing. <span id="especial">Nunc elit elit, vehicula
vulputate</span>, venenatis in,
posuere id, lorem. Etiam sagittis, tellus in ultrices accumsan, diam nisi feugiat ante, eu
congue magna mi non nisl.</p>
<p>Vivamus ultrices aliquet augue. <a href="#">Donec arcu pede, pretium vitae</a>, rutrum
aliquet, tincidunt blandit, pede.
Aliquam in nisi. Suspendisse volutpat. Nulla facilisi. Ut ullamcorper nisi quis mi.</p>
</div>
</body>
</html>
conchi.marcos@me.com 36
PRACTICA 002 – Selectores
Solución
<style type="text/css">
/* No borrar la siguiente regla CSS porque es necesaria para ver los bordes de la tabla
*/
conchi.marcos@me.com 37
PRACTICA 003 – Optimización
CSS
En este primer apartado haramos lo siguiente:
conchi.marcos@me.com 38
PRACTICA 011 _____________________________________
PAGINA WEB CON DIV Y CSS
En primer lugar haremos la estructura web:
CONCHI.MARCOS@ME.COM 39