Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Abril 2005
http://creativecommons.org/licenses/by-sa/2.0/
Conceptos bsicos
World Wide Web (WWW): Sistema de informacin. Navegador: Es el programa que nos ofrece acceso a nternet. Servidor: Se encarga de proporcionar al navegador los documentos ! medios que
este solicita.
"##$: Es el protocolo de transferencia de %iperte&to' o sea' el protocolo que los ,-*: Es el *ocali(ador ,niforme de -ecursos. "#)*: .*engua/e para marcado de %iperte&to..
servidores de World Wide Web utili(an para mandar documentos "#)* a trav+s de nternet.
El lengua/e "#)*
*engua/e que estructura el documento. $roporciona el contenido (utilizaremos CSS para el formato...) Compatibilidad. Etiquetas:
0tag1 te&to afectado 02tag1
0"#)*1: *imitan el documento e indica que se encuentra escrito en este lengua/e. 0"E341: Especifica el prlogo del resto del arc%ivo. Son pocas las tags que van dentro de ella' destacando la del titulo 0# #*E1. 056471: Encierra el resto del documento' el contenido.
<HTML> <HEAD> <TITLE>Ejemplo 1</TITLE> </HEAD> <BODY> Hola mundo </BODY> </HTML>
E/emplo
$HT !% $H&A'% $T(T!&%&)emplo 2$/T(T!&% $/H&A'% $*+',% $H-% i primera p.gina$/H-% $/-- A0ui va un comentario 0ue no es interpreta1o por el navega1or --% $2%Hola mun1o3 esta es un p.gina con titular3 0ue tiene tambi4n un p.rra5o y unos cuantos saltos 1e l6nea.$/2% 7no$br% 'os$br% Tres$br% $/*+',% $/HT !%
E/emplo enlaces
<HTML> <HEAD> <TITLE>Eje !lo "<#TITLE> <#HEAD> <B$D%> <A &AME'(arri)a(><H*>+,gina de enlaces<#H*><#A> <A H-E.'(/a)ajo(>Ir a)ajo<#A><)r> <A H-E.'(ej0.ht l(>Ir a eje !lo 0<#A><)r><)r> <A H-E.'(htt!:##111.1e)estilo.co #(>Ir a 2e)Estilo<#A><)r> <)r>.<)r>.<)r>.<)r>.<)r>.<)r>.<)r>.<)r><)r> <)r><)r><)r><)r><)r><)r><)r><)r><)r><)r><)r><)r> <)r><)r><)r><)r><)r><)r><)r><)r><)r><)r><)r><)r> <)r><)r><)r>.<)r>.<)r>.<)r>.<)r>.<)r> <A &AME'(a)ajo(><)r><#A> <A H-E.'(/arri)a(>Ir arri)a<#A> <#B$D%> <#HTML>
10
#ipos de ,-*
"##$: *os utili(ados por los servidores de WWW. ?#$: 3puntar arc%ivos que est+n en servidores que usan el protocolo ?#$ (?ile #ransfer $rotocol). ,tili(ado para enviar ! recibir fic%eros. ?ile: 3puntan %acia arc%ivos contenidos en el mismo disco que se encuentra el navegador )ailto: Se usa para mandar correos electrnicos. (>ebmasterAbienvenidos.es) Ne>s: Son ,-* de grupos de noticias.
11
12
13
14
Carcteres especiales
nsertar un carcter que no sea 3SC en nuestro documento "#)*. Estas entidades pueden ser:
Nombradas: Se suelen construir con el signo B' la abreviatura del carcter ! acabado con el signo punto ! coma. El s;mbolo de registrado se construir;a: BregC Numeradas: Se constru!en con los signos BD' el nEmero correspondiente a la posicin del carcter en el con/unto S6=*atin=8 ( S6=FFGH=8). El mismo s;mbolo de registrado' ser;a a%ora: BD8IJC
15
#ablas
<HTML> <HEAD> <TITLE>Eje !lo *D<#TITLE> <#HEAD> <B$D%> <H*>Ta)las )5aacute6sicas<#H*> <TABLE B$-DE-'(*(> <T-> <TH>>a)ereca *<#TH> <TH>>a)ereca 8<#TH> <TH>>a)ereca "<#TH> <#T-> <T-> <TD>Dato *<#TD> <TD>Dato 8<#TD> <TD>Dato "<#TD> <#T-> <T-> <TD>Dato 0<#TD> <TD>Dato G<#TD> <TD>Dato 3<#TD> <#T-> <#TABLE> <#B$D%> <#HTML>
16
#ablas avan(adas
#;tulo Cuando queramos titular una tabla usamos los tags 0caption1.....02caption1. El tag de apertura puede llevar el atributo align que indicar si el t;tulo va encima o deba/o de la tabla. align@.top. indicar;a encima de la tabla ! align@.bottom. indicar;a en la parte de aba/o. 3lineacin de celdas 3tributo align@ define %ori(ontalmente los datos al margen i(quierdo (le"t)' al derec%o (r!#$t) o centrado (%enter). 3tributo valign@ define verticalmente los datos en la parte superior (top)' en la parte inferior (&ottom) o centrado (m!ddle). Celdas e&tendidas $ara crear una celda que abarque varias filas o columnas' debemos colocar en las tags 0t%1 o 0td1 los atributos: ro>span@ ms un valor para indicar el nEmero de filas que se quiere abarcar. colspan@ ms un valor para indicar el nEmero de columnas que se quiere abarcar.
17
18
#ablas (espaciado)
$odemos modificar el aspecto de la tabla cambiando el anc%o de los bordes' el espaciado entre celdas ! el anc%o de las mismas. >idt%@ 3compaKa a 0table1 ! especifica el anc%o de la tabla' tanto en nEmero de pi&eles como en porcenta/e respecto al anc%o de la pantalla. #ambi+n puede acompaKar a las tags 0t%1 o 0td1 para especificar el anc%o de las columnas. cellspacing@ Suele acompaKar a la tag 0table1. ndica el nEmero de pi&eles que separan cada celda. El valor predeterminado suele ser 9. cellpadding@ #ambi+n acompaKa a la tag 0table1. ndica el espacio en pi&eles entre el borde de la celda ! su contenido. El valor predeterminado suele ser 8.
19
20
mgenes 0 )L1
ncluir imgenes en una presentacin >eb es mu! sencillo' solo debe de tener en cuenta que las imgenes tienen que tener los formatos L ?' M$EL o $NL. *as imgenes en l;nea' se especifican a partir de la tag 0img1 que no tiene una tag correspondiente de cierre pero que puede acompaKarse de los siguientes atributos: src@ Este atributo es obligatorio e indica el nombre del arc%ivo de imagen (entre comillas) o la ,-* que se va a representar. align@ $ermite controlar la alineacin de una imagen con respecto a una l;nea de te&to ad!acente o a otras imgenes en esa l;nea. *os tres valores posibles son los !a conocidos left' rig%t' top' middle ! bottom. alt@ Es la alternativa que se estableci cuando todav;a e&ist;an visuali(adores de solo te&to. Entre comillas podremos escribir un te&to que suplantara a esta imagen si no se carga o mientras se carga o cuando' visuali(ando !a la imagen' pasamos el ratn por encima. >idt%@ Este atributo es opcional pero es recomendable ponerlo para a!udar al navegador a representar la imagen' significa el anc%o de la imagen que vamos a representar. %eig%t@3l igual que el atributo W 4#"' es opcional ! recomendable ponerlo' este significa el alto de la imagen. border@ Con 56-4E- especificamos el anc%o de un borde que rodea la imagen.
21
E/emplo imagen
<HTML> <HEAD> <TITLE>Eje !lo *8<#TITLE> <#HEAD> <B$D%> <H*>I 5aacute6genes<#H*> <IM= <->'(#gra7icos#)e)e*.j!g( 2IDTH'*0D HEI=HT'8*D B$-DE-'D ALT'(4n )e)5eacute6( ALI=&'(-I=HT(> <IM= <->'(#gra7icos#)e)e*.j!g( 2IDTH'*0D HEI=HT'8*D B$-DE-'" ALT'(4n )e)5eacute6( ALI=&'(LE.T(> 4n te:to cualJuiera. <#B$D%> <#HTML>
22
?ormularios
*os formularios permiten solicitar informacin al visitante. #ags 0form1.....02form1 ! dentro de ellas se recogern todas las variables de entrada.
action@.. ndica el programa que va a tratar las variables enviadas con el formulario. met%od@.. ndica el m+todo de transferencia de las variables. $ost' si se env;a a trav+s del STDIO. Let' si se env;a a trav+s de la ,-*.
23
E/emplo formulario
<HTML> <HEAD> <TITLE>Eje !lo *0<#TITLE> <#HEAD> <B$D%> <H*>.or ularios<#H*> <.$-M A>TI$&'(!rue)a.!h!( METH$D'(+$<T(> <I&+4T T%+E'(te:t( &AME'(no )re(><B-> <I&+4T T%+E'(su) it(> <I&+4T T%+E'(-eset(> <#.$-M> <#B$D%> <#HTML>
24
25
E/emplo N$,#
$HT !% $H&A'% $T(T!&%&)emplo -5$/T(T!&% $/H&A'% $*+',% $H-%8ormularios$/H-% $8+9 ACT(+:;<prueba.php< &TH+';<2+#T<%
Te=to: $(:27T T,2&;<te=t< :A &;<nombre<%$*9% 2asswor1: $(:27T T,2&;<passwor1< :A &;<contra<%$*9% #e=o:$(:27T T,2&;<ra1io< :A &;<boton-< >A!7&;<-<% Hombre $(:27T T,2&;<ra1io< :A &;<boton-< >A!7&;<2<% u)er$*9% >ehiculo:$(:27T T,2&;<chec?bo=< :A &;< oto< >A!7&;<#i<% oto $(:27T T,2&;<chec?bo=< :A &;<Coche< >A!7&;<< CH&C@&'%Coche $*9%$*9% $(:27T T,2&;<submit<%$(:27T T,2&;<9eset<% $/8+9 % $/*+',% $/HT !%
26
*as diferentes opciones de la lista se indicarn mediante la tag 0option1 que puede acompaKarse del atributo selected.
27
E/emplo 0SE*EC#1
<HTML> <HEAD> <TITLE>Eje !lo *3<#TITLE> <#HEAD> <B$D%> <H*>.or ularios<#H*> <.$-M A>TI$&'(!rue)a.!h!( METH$D'(+$<T(> <<ELE>T &AME'(>olores( M4LTI+LE> <$+TI$& @AL4E'(r(>-ojo<#$+TI$&> <$+TI$& @AL4E'(g(>@erde<#$+TI$&> <$+TI$& @AL4E'()(>A;ul<#$+TI$&> <#<ELE>T> <B-><B-> <<ELE>T &AME'(>olores( <IKE'(*(> <$+TI$& @AL4E'(r(>-ojo<#$+TI$&> <$+TI$& @AL4E'(g(>@erde<#$+TI$&> <$+TI$& @AL4E'()(>A;ul<#$+TI$&> <#<ELE>T> <B-><B-> <I&+4T T%+E'(su) it(><I&+4T T%+E'(-eset(> <#.$-M> <#B$D%> <#HTML>
28
29
Capas 0div1
*as capas se pueden definir como pginas que se pueden incrustar dentro de otras. $ropiedades de estilo:
left ! top: SitEan la esquina superior i(quierda de la capa respecto a la esquina superior i(quierda de la capa donde est+. >idt% ! %eig%t: 4eterminan la anc%ura ! altura de la capa. clip: rea que se podr ver dentro de la capa
e/: clip:rect( !p" #!p" $!p" %!p"&' recortar la capa creando un cuadro visible cu!a esquina superior i(quierda est a 8R pi&els por la i(quierda ! 9R por arriba de la de la capa ! cu!o tamaKo ser;a de :R=8R de anc%o ! JR=9R de alto. rect(top ri(ht bottom left&
(=inde&: *as capas con un ma!or (=inde& se colocarn ms arriba visibilit!: visible' %idden (oculta) o in%erit (%ereda la visibilidad de la capa padre)
30
CSS
Separar el formato visual de la pgina del contenido. CSS son las siglas de .Cascade St!leS%eet.. Se trata de una especificacin sobre los estilos f;sicos aplicables a un documento "#)*' ! trata de dar la separacin definitiva de la lgica (estructura) ! el f;sico (presentacin) del documento. HTML Render ><< 31 +antalla
ntroduccin
6b/etivos 4ar formato pginas >eb Separar diseKo S contenido Centrali(ar propiedades aspecto ?acilitar mantenimiento diseKo
32
Caracter;sticas
?ic%ero de te&to ?ormato de pginas "#)*' $"$' ... "erencia de propiedades entre elementos (/erarqu;a) Clases definibles por el usuario
33
$ropiedades
*ongitud (por e/.' mrgenes):
T=UNNtipo
NN:
em (el alto de la ) ma!Escula) e& (la mitad de la altura de la ) ma!Escula) relativas p& (p;&el) pt (puntos) pc (picas) in (inc%es) absolutas mm (mil;metros) cm (cent;metros).
Color:
Notacin D--LL55' siendo --' LL' 55 los valores en %e&adecimal de las componentes ro/a' verde ! a(ul del color. Nombre predefinido (>%ite' !ello>...). ,sando la funcin rgb(-'L'5)' donde -' L' 5 son los valores en decimal.
34
35
36
$ropiedades = )arco
37
$ropiedades = )arco
-eferencia: %ttp:22>>>.>:.org2#-2-EC=CSS8
mar(in) mar(in*left) border) bac+(round) font*famil,...
38
$gina de estilos
e s tilo .c s s p a g in a 1 .% tm l p a g in a 2 .p % p p a g in a 3 .% tm p a g in a 4 .d % tm l
<html> <head> <link rel=stylesheet href=estilo.css type=text/css> </head> <body> ... </body> </html>
39
3plicacin
40
41
-edefinicin de etiqueta
$HT !% $H&A'% $T(T!&% &)emplo con blo0ue 1e estilo $/T(T!&% <<T%LE T%+E'(te:t#css(> <LFF B$D% M7ontF7a ilB:@erdanaNsansFseri767ontFsi;e::Fs all6 arginFle7t:D.8Gin6 arginFright:D.8GinO H8 M7ontF7a ilB:@erdanaNsansFseri767ontFsi;e:*0!t6color:redO BN TD M7ontF7a ilB:@erdanaNsansFseri767ontFsi;e::Fs all6color:oliIeO TH M7ontF7a ilB:@erdanaNsansFseri767ontFsi;e::Fs all6 color:1hite6)acPgroundFcolor:/DDCD>DO +-EN TTN >$DE M7ontF7a ilB:>ourier &e1N>ourier67ontFsi;e:A!t6color: aroonO ##FF> <#<T%LE> $/H&A'% $*+', *GC+!+9;white% $H2%2rueba 1e 1e5iniciHn 1e estilos en un blo0ue aparte$/H2% Como pue1e verse3 la apariencia 1e esta p.gina 0ue1a completamente 1e5ini1a por los estilos 0ue hemos especi5ica1o en el blo0ue #T,!& en la cabecera 1el 1ocumento. !os m.rgenes son m.s amplios 1e lo habitual3 la $*%negrita$/*% tiene un tamaIo y un color 5i)os3 los troDos 1e te=to en teletipo como $TT%este 5ragmento$/TT% tambi4n tienen 1e5ini1a su 5uente3 tamaIo y color3 y vamos a ver cHmo 0ue1an las tablas3 para 5inaliDar el e)emplo: $2% $C&:T&9% $TA*!& *+9'&9;- C&!!#2AC(:G;2 C&!!2A''(:G;2% $T9% $TH%Cabecera -$/TH% $TH%Cabecera 2$/TH% $/T9% $T9% $T'%Cel1a J-3-K$/T'% $T'%Cel1a J-32K$/T'% $/T9% $/TA*!&% $/C&:T&9% $/*+',% $/HT !%
42
B$D% M7ontF7a ilB:@erdanaNsansFseri767ontFsi;e::Fs all6 arginFle7t:D.8Gin6 arginFright:D.8GinO H8 M7ontF7a ilB:@erdanaNsansFseri767ontFsi;e:*0!t6color:redO BN TD M7ontF7a ilB:@erdanaNsansFseri767ontFsi;e::Fs all6color:oliIe TH M7ontF7a ilB:@erdanaNsansFseri767ontFsi;e::Fs all6 color:1hite6)acPgroundFcolor:/DDCD>DO +-EN TTN >$DE M7ontF7a ilB:>ourier &e1N>ourier67ontFsi;e:A!t6c
43
"erencia de estilos
E&iste una /erarqu;a de etiquetas que contienen a otras' para darnos una relacin de %erencia:
<B$D%>
Herencia 1e estilo
44
E/emplo %erencia
<HTML> <HEAD> <TITLE> Eje !lo * de herencia <#TITLE> <LI&? -EL'(stBlesheet( T%+E'(te:t#css( H-E.'(eje !lo.css(> <#HEAD> <B$D% B=>$L$-'1hite> Todo el te:to tiene de7inido el estilo .uente:@erdanaN Ta aRo::Fs allN Margen i;Juierdo:D.8GinN Margen derecho:D.8GinN <<+A& <T%LE'(color:red(>!ero este tro;o de lHnea es de un color distintoN conserIando el resto de !ro!iedades<#<+A&>N B eso hace interesante la herencia B la !osi)ilidad de ca )iar en !artes concretas los estilos heredados. <#B$D%> <#HTML>
#V De7iniciQn de estilos en un archiIo a!arte V# #V Estilo !ara el docu ento V# B$D% M7ontF7a ilB:@erdanaNsansFseri767ontFsi;e::Fs all6 arginFle7t:D.8Gin6 arginFright:D.8GinO #V Estilo !ara la ca)ecera de niIel 8 V# H8 M7ontF7a ilB:@erdanaNsansFseri76 7ontFsi;e:*0!t6color:redO #V Estilos !ara otras etiJuetas V# BN TD M7ontF7a ilB:@erdanaNsansFseri767ontFsi;e::Fs all6 color:oliIeO TH M7ontF7a ilB:@erdanaNsansFseri767ontFsi;e::Fs all6 color:1hite6)acPgroundFcolor:/DDCD>DO +-EN TTN >$DE M7ontF7a ilB:>ourier &e1N>ourier6 7ontFsi;e:A!t6color: aroonO
45
46
Clases
,na clase es una definicin de estilo que no est asociado a ninguna etiqueta "#)*' pero que podemos asociar' en el documento' a etiquetas concretas. 4efinimos la clase:
.NombreVdeVlaVClase Wpropiedad8:valorC...CpropiedadN:valorX
47
E/emplo clases
$HT !% $H&A'% $T(T!&% &)emplo 1e uso 1e clases $/T(T!&% $#T,!& T,2&;<te=t/css<% $/-*+', L5ont-5amily:>er1ana3sans-seri5F5ont-siDe:=-smallM 23A3* Lcolor:re1M .*ADul Lcolor:blueM //--% $/#T,!&% $/H&A'% $*+', *GC+!+9;white% &n este e)emplo vamos a ver cHmo se aplican las clases. 2or e)emplo3 $*%esta negrita$/*% utiliDa el estilo 1e5ini1o en el blo0ue3 pero $* C!A##;<*ADul<%esta otra negrita$/*% tiene un color 1istinto. , no sHlo po1emos usar la clase para la negrita. 2or e)emplo3 $#2A: C!A##;<*ADul<%este troDo 1e l6nea tambi4n utiliDa la clase para su estilo particular$/#2A:%. $/*+',% $/HT !%
48
Etiquetas
Cualquier etiqueta "#)* puede tener como parmetro la etiqueta 4 seguida de un nombre:
0etiqueta 4@.Nombre-eferencia.1 ... 02etiqueta1
Este .Nombre-eferencia. debe ser Enico en el documento "#)*. $ara definir un estilo mediante un 4:
DNombreVdelV 4 Wpropiedad8:valorC...CpropiedadN:valorX
49
$seudoclases
"a! ocasiones en las que "#)* da a algunas etiquetas un estilo propio: por e/emplo' los enlaces aparecen por defecto de otro color ! subra!ados. Estos elementos son las pseudoclases. $or a%ora' slo estn definidas para la etiqueta 031. 4efinicin: etiqueta:pseudoclase Wpropiedad8:valorC...CpropiedadN:valorX ! las pseudoclases de que disponemos son: linO Nos dice el estilo de un enlace que no %a sido visitado. visited Nos dice el estilo de un enlace que %a sido visitado. active Nos dice el estilo de un enlace que est siendo pulsado. %over Nos dice el estilo de un enlace sobre el que est pasando el ratn.
50
E/emplo pseudoclases
$or e/emplo' si deseasemos que apareciesen todos los enlaces sin subra!ar' definiriamos los siguientes estilos:
A'l!n()A'*!+!ted)A'a%t!*e ,te-t.de%orat!on'none/
Enlaces
-eferencia "#)* J: %ttp:22>>>.>:.org2#-2-EC=%tmlJR2 -eferencia CSS8: %ttp:22>>>.>:.org2#-2-EC=CSS8 Cursos:
"#)*:
%ttp:22>>>.programacion.com2%tml2tutorial2curso2 %ttp:22>>>.>ebestilo.com2%tml2
CSS:
%ttp:22>>>.programacion.com2%tml2tutorial2css82 %ttp:22>>>.>ebestilo.com2css2
52