MANUAL HTML

  1. EDITOR
  2. INICIO- cuerpo de la pagina
  3. SALTO DE LINEA <br>
  4. PARRAFO <p>
  5. TITULOS <h1><h2><h3><h4><h5><h6>
  6. Enfasis (<em> <strong>)
  7. Hipervínculo a otra página del mismo sitio <a>
  8. Hipervínculo a otro sitio de internet <a>
  9. Imágenes dentro de una página <img>
  10. Hipervínculo mediante una imagen <a> y <img>
  11. Apertura de un hipervínculo en otra instancia del navegador.
  12. Hipervínculo a un cliente de correo <a>
  13. Anclas llamadas desde la misma página.
  14. Anclas llamadas desde otra página.
  15. Lista ordenada (<ol>)
  16. Lista no ordenada (<ul>)
  17. Lista de definiciones (<dl>)
  18. Listas anidadas.
  19. Tabla (<table><tr><td>)
  20. Tabla con encabezado (<th>)
  21. Tabla con título (<caption>)
  22. Tabla y combinación de celdas
  23. Contenido de la cabecera de la página (<title>)
  24. Contenido de la cabecera de la página (<meta>)
  25. COMENTARIOS DENTRO DE UNA PÁGINA <!-- -->
  26. Sintaxis para caracteres especiales.
  27. Frames
  28. Frames - Actualización de un frame a partir del enlace de otro frame
  29. Frames - Asignación de medidas en píxeles
  30. Frames - Propiedades del elemento frame
  31. Frames - Anidamiento de frameset
  32. iframes
  33. Declaración DOCTYPE.
  34. Declaración DOCTYPE. HTML Transitional
  35. Declaración DOCTYPE. HTML Estricto
  36. Declaración DOCTYPE. para Frames
  37. Validación de la página a través de un enlace.
  38. Elementos y propiedades de HTML que no se deben usar

1.- EDITOR

El editor usado en la edicion de los ejercicios es el NOTEPAD++ DESCARGA es facil de usar y enumera las lineas de programacion.

Volver al inicio

2.- INICIO- cuerpo de la pagina

Toda página en su codigo comienza con la marca <html> y finaliza con la marca </html> los fines de marcas tienen el mismo nombre que el comienzo de marca, más el caracter /.

Una página HTML tiene dos secciones muy bien definidas que son la:

cabecera: <head></head>

cuerpo de la página: <body></body>

<html>
<head>
</head>
<body>
PHP - Java - JavaScript - C - C++
</body>
</html>

Todo el texto que dispongamos dentro del <body> aparece dentro del navegador tal cual lo hayamos escrito. Todas las páginas tiene como mínimo esta estructura: cabecera y cuerpo.

Otra cosa importante es que el lenguaje HTML no es sensible a mayúsculas y minúsculas, es decir podemos escribirlo como más nos guste, además no requiere que dispongamos cada marca en una línea (podríamos inclusive escribir toda la página en una sola línea! cosa que no conviene ya que somos nosotros quienes tendremos que modificarla en algún momento).

Volver al inicio

3.- SALTO DE LINEA <br>

Todo el texto que disponemos en el cuerpo de la página aparece en la misma línea,no importa si cuando tipeamos la página disponemos cada palabra en una línea distinta (es decir un navegador no tiene en cuenta la tecla ENTER).

Para indicarle al navegador que queremos que continúe en la próxima línea debemos hacerlo con el elemento HTML:<br>

Cuando aparece la marca <br> el navegador continua con el texto en la línea siguiente.

Es uno de los pocos elementos HTML que no tiene marca de cerrado como habíamos visto hasta ahora.

<br> viene de break

<html>
<head>
</head>
<body>
	PHP<br>
	JavaScript<br>
	Java<br>
	C<br>
	C++
</body>
</html>

PHP
Java
JavaScript
C
C++

Volver al inicio

4.- PARRAFO <p>

Un párrafo es una oración o conjunto de oraciones referentes a un mismo tema.

Todo lo que encerremos entre las marcas <p> y </p> aparecerá separado por un espacio con respecto al próximo párrafo.

Dentro de un párrafo puede haber saltos de línea

<p> viene de paragraph

<html>
<head>
</head>
<body>
<p>
SQL, Structure Query Language (Lenguaje de Consulta Estructurado) es un lenguaje de programacion para trabajar con base de 
datos relacionales como MySQL, Oracle, etc.<br>
MySQL es un interpretador de SQL, es un servidor de base de datos.<br>
MySQL permite crear base de datos y tablas, insertar datos, modificarlos, eliminarlos, ordenarlos, hacer 
consultas y realizar muchas operaciones, etc., resumiendo: administrar bases de datos.
</p>
<p>
Este tutorial tiene por objetivo acercar los conceptos iniciales para introducirse en el mundo de las bases de datos.
</p>
</body>
</html>

SQL, Structure Query Language (Lenguaje de Consulta Estructurado) es un lenguaje de programacion para trabajar con base de datos relacionales como MySQL, Oracle, etc.

MySQL es un interpretador de SQL, es un servidor de base de datos. MySQL permite crear base de datos y tablas, insertar datos, modificarlos, eliminarlos, ordenarlos, hacer consultas y realizar muchas operaciones, etc., resumiendo: administrar bases de datos.

Este tutorial tiene por objetivo acercar los conceptos iniciales para introducirse en el mundo de las bases de datos.

Volver al inicio

5.- TITULOS <h1><h2><h3><h4><h5><h6>

El título de mayor nivel es <h1>, es decir el que tienen una fuente mayor (veremos que es el navegador el responsable de definir el tamaño de la fuente, más adelante podrá ver que uno puede modificar la fuente, tamaño, color etc.)

Según la importancia del título utilizaremos alguno de estos elementos HTML. Requiere la marca de cerrado del título con la barra invertida como hemos visto.

<h1> viene de heading, heading significa título.

<html>
<head></head>
<body>
<h1>Tipos de datos en MySQL</h1>
<h2>varchar</h2>
<p>
se usa para almacenar cadenas de caracteres. Una cadena es una secuencia de caracteres. Se coloca entre comillas (simples): 
'Hola'.<br>
El tipo "varchar" define una cadena de longitud variable en la cual determinamos el máximo de caracteres. 
Puede guardar hasta 255 caracteres. Para almacenar cadenas de hasta 30 caracteres, definimos un campo de tipo varchar(30).
</p>
<h2>int</h2>
<p>
Se usa para guardar valores numéricos enteros, de -2000000000 a 2000000000 aproximadamente.<br> 
Definimos campos de este tipo cuando queremos representar, por ejemplo, cantidades.
</p>
</body>
</html>

Tipos de datos en MySQL

varchar

se usa para almacenar cadenas de caracteres. Una cadena es una secuencia de caracteres. Se coloca entre comillas (simples): 'Hola'.

El tipo "varchar" define una cadena de longitud variable en la cual determinamos el máximo de caracteres. Puede guardar hasta 255 caracteres. Para almacenar cadenas de hasta 30 caracteres, definimos un campo de tipo varchar(30).

int

Se usa para guardar valores numéricos enteros, de -2000000000 a 2000000000 aproximadamente. Definimos campos de este tipo cuando queremos representar, por ejemplo, cantidades.

Volver al inicio

6 - Enfasis (<em> <strong>)

Enfatizar algo significa realzar la importancia de una cosa, por ejemplo una palabra o conjunto de palabras.

Así como tenemos seis niveles de títulos para enfatizar un bloque contamos con dos elementos que son (<em><strong>) El elemento de mayor fuerza de énfasis es strong y le sigue em

La mayoría de los navegadores muestran el texto enfatizado con strong con un texto en negrita y para el elemento em utilizan letra itálica (de todos modos esto no es obligatorio, pero seguramente mostrarán los textos enfatizados)

Otra cosa importante que podemos hacer notar es que estos elementos HTML no producen un salto de línea como los de título (h1,h2 etc.)

Para recordar el nombre de estos elementos HTML:
<em> viene de empathize que significa énfasis.
<strong> viene de strong que significa fuerte
.

<html>
<head></head>
<body>
<p><strong>Típos de datos</strong> en MySQL</p>
<p><em>TEXTO</em>: Para almacenar texto usamos cadenas de caracteres. Las cadenas se colocan entre comillas 
simples. Podemos almacenar dígitos con los que no se realizan operaciones matemáticas, por ejemplo, códigos de 
identificación, números de documentos, números telefónicos. Tenemos los siguientes tipos: varchar, char y text.</p>
<p><em>NUMEROS</em>: Existe variedad de tipos numéricos para representar enteros, negativos, decimales. 
Para almacenar valores enteros, por ejemplo, en campos que hacen referencia a cantidades, precios, etc., usamos 
el tipo integer. Para almacenar valores con decimales utilizamos: float o decimal.</p>
<p><em>FECHAS Y HORAS</em>: para guardar fechas y horas dispone de varios tipos: date (fecha), 
datetime (fecha y hora), time (hora), year (año) y timestamp.</p>
</body>
</html>

Típos de datos en MySQL

TEXTO: Para almacenar texto usamos cadenas de caracteres. Las cadenas se colocan entre comillas simples. Podemos almacenar dígitos con los que no se realizan operaciones matemáticas, por ejemplo, códigos de identificación, números de documentos, números telefónicos. Tenemos los siguientes tipos: varchar, char y text.

NUMEROS: Existe variedad de tipos numéricos para representar enteros, negativos, decimales. Para almacenar valores enteros, por ejemplo, en campos que hacen referencia a cantidades, precios, etc., usamos el tipo integer. Para almacenar valores con decimales utilizamos: float o decimal.

FECHAS Y HORAS: para guardar fechas y horas dispone de varios tipos: date (fecha), datetime (fecha y hora), time (hora), year (año) y timestamp.

Volver al inicio

7 - Hipervínculo a otra página del mismo sitio <a>

La marca de hipervínculo a otra página del mismo sitio tiene la siguiente sintaxis:
<a href="pagina2.html">Noticias</a> Como vemos, se trata de otro elemento HTML que tiene comienzo de marca y fin de marca.

Lo que se encuentra entre el comienzo de marca y el fin de la marca es el texto que aparece en la página (normalmente subrayado).

Lo nuevo que aparece en este elemento es el concepto de una propiedad. Una propiedad se incorpora en el comienzo de una marca y tiene un nombre y un valor. El valor de la propiedad debe ir entre comillas dobles.

La propiedad href del elemento "a" hace referencia a la página que debe mostrar el navegador si el visitante hace clic sobre el hipervínculo.

El valor de la propiedad href en este caso es pagina2.html (es otro archivo HTML que debe encontrarse en nuestro sitio y en el mismo directorio).

Para recordar el nombre de esta marca HTML:
<a> viene de anchor que significa ancla.

Volver al inicio

8 - Hipervínculo a otro sitio de internet <a>

La sintaxis para disponer un hipervínculo a otro sitio de internet es:
<a href="http://www.google.com">Buscador Google</a>

Ahora la propiedad href la inicializamos con el nombre del dominio del otro sitio.
Algo importante que hay que anteceder al nombre del dominio es el tipo de protocolo a utilizar.
Cuando se trata de una página de internet, el protocolo es el http.

Resumiendo a la propiedad href la inicializamos con el nombre del protocolo (http) seguida de dos puntos (:) y dos barras (//) luego la cadena (www.) y finalmente el nombre de dominio del sitio a enlazar.

Podemos enlazar a una página determinada de otro sitio. Veamos un ejemplo,
si queremos disponer un enlace (hipervínculo) a la pagina about.html de google la sintaxis será la siguiente:
<a href="http://www.google.com/intl/en/about.html">Acerca de Google</a>

Debemos conocer exactamente el nombre de la página (en este caso about.html)
y también si la página no se encuentra en el directorio raiz debemos saber exactamente el camino de directorios (en este caso /intl/en/)

Volver al inicio

9 - Imágenes dentro de una página <img>

Para insertar una imagen dentro de una página debemos utilizar el elemento HTML <img>, la misma no tiene una marca de finalización (similar a la marca <br>). Generalmente, la imagen se encuentra en el mismo servidor donde se almacenan nuestras páginas HTML.

Los formatos clásicos son los archivos con extensiones gif, jpg y png.
La sintaxis de esta marca es: <img src="foto1.jpg" alt="Pintura geométrica">

Como mínimo, debemos inicializar las propiedades src y alt de la marca HTML img.
En la propiedad src indicamos el nombre del archivo que contiene la imagen (en un servidor Linux es sensible a mayúsculas y minúsculas por lo que recomiendo que siempre utilicen minúsculas para los nombres de archivos).

Como la imagen se encuentra en el mismo directorio donde se almacena la página HTML, con indicar el nombre de archivo basta (no es necesario indicar ninguna ruta de carpetas).

Otra propiedad obligatoria es alt, donde disponemos un texto que verán los usuarios que visiten el sitio con un navegador que sólo permite texto (o con un navegador que tenga desactivada la opción de descarga de imágenes).

El texto debe describir el contenido de la imagen.
Si la imagen se encuentra en una subcarpeta llamada imagenes, luego la sintaxis para recuperarla será:
<img src="imagenes/foto1.jpg" alt="Pintura geométrica">
Es decir, antecedemos al nombre de la imagen el nombre de la carpeta y la barra /

Si la imagen se encuentra en una carpeta padre de donde se encuentra la página HTML luego la sintaxis será:
<img src="../foto1.jpg" alt="Pintura geométrica"> Es decir, le antecedemos .. y la barra / al nombre de la imagen

Si queremos subir dos carpetas luego escribimos: <img src="../../foto1.jpg" alt="Pintura geométrica">

Por último, si queremos acceder a una imagen que se encuentra en una carpeta llamada imagenes pero que está al mismo nivel: <img src="../imagenes/foto1.jpg" alt="Pintura geométrica">

Primero le indicamos que subimos al directorio padre mediante los dos puntos .. y seguidamente indicamos el nombre de la carpeta y la imagen a mostrar.

<img> viene de image
src viene de source
alt viene de alternative

Volver al inicio

10 - Hipervínculo mediante una imagen <a> y <img>

Como ya conocemos los hipervínculos y como insertar imágenes en nuestra página, ahora podemos implementar un hipervínculo pero en vez de mostrar un texto mostraremos una imagen.

La solución es simple y consiste en disponer la marca <img> encerrada entre la marca de comienzo y fin del enlace(<a>) <a href="pagina2.html"><img src="/imagenes/foto1.jpg" alt="Pintura Geométrica"></a>

Lo que debe quedar bien en claro es que las imágenes se encuentran en un directorio llamado imagenes en la raiz del sitio (luego para indicar la referencia al archivo lo hacemos antecediendo la barra invertida / con lo que hacemos referencia a que partimos desde la raiz del sitio) en una carpeta llamada imagenes (/imagenes/foto1.jpg)

Volver al inicio

11 - Apertura de un hipervínculo en otra instancia del navegador.

El elemento "a" tiene una propiedad target que nos permite indicar que la referencia del recurso sea abierto en otra página.
Esta propiedad se llama target y debemos asignarle el valor "_blank" para indicar que el recurso sea abierto en otra ventana.
y el segundo hipervínculo que indica que el sitio sea abierto en otra ventana del navegador:
<a href="http://www.clarin.com.ar" target="_blank">Periódico Clarin</a>

Volver al inicio

12 - Hipervínculo a un cliente de correo <a>

El elemento "a" permite direccionar un hipervínculo a un programa de envío de correos que tengamos configurado en nuestra computadora.
Cuando se presiona el enlace se abre el programa de envío de correos que tiene configurado el equipo y dispone
como receptor del mensaje la dirección que configuramos en el propio enlace seguido de la palabra mailto:
La sintaxis para disponer un título por defecto y un cuerpo de mensaje es:
<a href="mailto:diegoestevanes@gmail.com?subject=título del mensaje&body=cuerpo del mensaje">Enviar mail.</a>

ENVIAR EMAIL

Es decir luego de especificar el destinatario del mail disponemos un caracter de interrogación '?' seguido la palabra subject, un igual y el título por defecto que debe aparecer en la ventana de envío de mail. Por último separamos con un ampersand '&' la inicialización de subject y el body (es decir el cuerpo del mensaje).

Podemos inclusive añadir el envío de mail con copia y con copia oculta a otras direcciones:

<a href="mailto:diego1@gmail.com?subject=aquí el título&cc=diego2@gmail.com&bcc=diego3@gmail.com&body=Este es el cuerpo"> Enviar mail.</a>

En este ejemplo enviamos un mail a diego1@gmail.com, con copia a diego2@gmail.com y con copia oculta a diego3@gmail.com

Volver al inicio

13 - Anclas llamadas desde la misma página.

La sintaxis para definir un ancla es: <a name="nombreancla"></a>

No debemos confundir un ancla con un hipervínculo, más alla que se utiliza el mismo elemento a.
Para un ancla inicializamos la propiedad name con el nombre del ancla.

Un ancla se la define en una parte de la página que queremos que el operador llegue a partir de un hipervínculo.
Ahora la sintaxis para ir a un ancla desde un hipervínculo es la siguiente:

<a href="#nombreancla">Introducción</a> vemos que en la propiedad href indicamos el nombre del ancla.

Luego la definición de las anclas son:<a name="nombreancla"></a>
Como podemos observar la definición del ancla se hace inmediatamente anterior al título donde queremos que el navegador se sitúe.

<html>
<head></head>
<body>
<h1>Tutorial de MySQL</h1>
<a href="#introduccion">Introducción</a><br>
<a href="#mostrarbasedatos">show databases</a><br>
<a href="#creaciontabla">Creación de una tabla y mostrar sus campos</a><br>
<a href="#cargarregistros">Carga de registros a una tabla y su recuperación</a><br>

<a name="introduccion"></a>
<h2>Introducción</h2>
<p>
SQL, Structure Query Language (Lenguaje de Consulta Estructurado) es un lenguaje de programacion para trabajar con base de
 datos relacionales como MySQL, Oracle, etc.<br>
MySQL es un interpretador de SQL, es un servidor de base de datos.<br>
MySQL permite crear base de datos y tablas, insertar datos, modificarlos, eliminarlos, ordenarlos, hacer consultas y realizar 
muchas operaciones, etc., resumiendo: administrar bases de datos.<br>
Ingresando instrucciones en la linea de comandos o embebidas en un lenguaje como PHP nos comunicamos con el servidor. 
Cada sentencia debe acabar con punto y coma (;).<br>
La sensibilidad a mayúsculas y minúsculas, es decir, si hace diferencia entre ellas, depende del sistema operativo, Windows no 
es sensible, pero Linux si. Por ejemplo Windows interpreta igualmente las siguientes sentencias:<br>
create database administracion;<br>
Create DataBase administracion;<br>
Pero Linux interpretará como un error la segunda.<br>
Se recomienda usar siempre minúsculas. Es más el sitio mysqlya.com.ar está instalado sobre un servidor Linux por lo que todos 
los ejercicios deberán respetarse mayúsculas y minúsculas.
</p>
<a name="mostrarbasedatos"></a>
<h2>show databases</h2>
<p>
Una base de datos es un conjunto de tablas.<br>
Una base de datos tiene un nombre con el cual accederemos a ella.<br>
Vamos a trabajar en una base de datos ya creada en el sitio, llamada "administracion".<br>
Para que el servidor nos muestre las bases de datos existentes, se lo solicitamos enviando la instrucción:<br>
show databases;<br>
Nos mostrará los nombres de las bases de datos, debe aparecer en este sitio "administracion".<br>
</p>
<a name="creaciontabla"></a>
<h2>Creación de una tabla y mostrar sus campos</h2>
<p>
Una base de datos almacena sus datos en tablas.<br>
Una tabla es una estructura de datos que organiza los datos en columnas y filas; cada columna es un campo (o atributo) y cada fila, 
un registro. La intersección de una columna con una fila, contiene un dato específico, un solo valor.<br>
Cada registro contiene un dato por cada columna de la tabla.<br>
Cada campo (columna) debe tener un nombre. El nombre del campo hace referencia a la información que almacenará.<br>
Cada campo (columna) también debe definir el tipo de dato que almacenará.<br>
</p>
<a name="cargarregistros"></a>
<h2>Carga de registros a una tabla y su recuperación</h2>
<p>
Usamos "insert into". Especificamos los nombres de los campos entre paréntesis y separados por comas y luego los valores para
cada campo, también entre paréntesis y separados por comas.<br>
Es importante ingresar los valores en el mismo orden en que se nombran los campos, si ingresamos los datos en otro orden, no 
aparece un mensaje de error y los datos se guardan de modo incorrecto.<br>
Note que los datos ingresados, como corresponden a campos de cadenas de caracteres se colocan entre comillas simples. 
Las comillas simples son OBLIGATORIAS.
</p>
</body>
</html>

Tutorial de MySQL

Introducción
show databases
Creación de una tabla y mostrar sus campos
Carga de registros a una tabla y su recuperación

Introducción

SQL, Structure Query Language (Lenguaje de Consulta Estructurado) es un lenguaje de programacion para trabajar con base de datos relacionales como MySQL, Oracle, etc.
MySQL es un interpretador de SQL, es un servidor de base de datos.
MySQL permite crear base de datos y tablas, insertar datos, modificarlos, eliminarlos, ordenarlos, hacer consultas y realizar muchas operaciones, etc., resumiendo: administrar bases de datos.
Ingresando instrucciones en la linea de comandos o embebidas en un lenguaje como PHP nos comunicamos con el servidor. Cada sentencia debe acabar con punto y coma (;).
La sensibilidad a mayúsculas y minúsculas, es decir, si hace diferencia entre ellas, depende del sistema operativo, Windows no es sensible, pero Linux si. Por ejemplo Windows interpreta igualmente las siguientes sentencias:
create database administracion;
Create DataBase administracion;
Pero Linux interpretará como un error la segunda.
Se recomienda usar siempre minúsculas. Es más el sitio mysqlya.com.ar está instalado sobre un servidor Linux por lo que todos los ejercicios deberán respetarse mayúsculas y minúsculas.

show databases

Una base de datos es un conjunto de tablas.
Una base de datos tiene un nombre con el cual accederemos a ella.
Vamos a trabajar en una base de datos ya creada en el sitio, llamada "administracion".
Para que el servidor nos muestre las bases de datos existentes, se lo solicitamos enviando la instrucción:
show databases;
Nos mostrará los nombres de las bases de datos, debe aparecer en este sitio "administracion".

Creación de una tabla y mostrar sus campos

Una base de datos almacena sus datos en tablas.
Una tabla es una estructura de datos que organiza los datos en columnas y filas; cada columna es un campo (o atributo) y cada fila, un registro. La intersección de una columna con una fila, contiene un dato específico, un solo valor.
Cada registro contiene un dato por cada columna de la tabla.
Cada campo (columna) debe tener un nombre. El nombre del campo hace referencia a la información que almacenará.
Cada campo (columna) también debe definir el tipo de dato que almacenará.

Carga de registros a una tabla y su recuperación

Usamos "insert into". Especificamos los nombres de los campos entre paréntesis y separados por comas y luego los valores para cada campo, también entre paréntesis y separados por comas.
Es importante ingresar los valores en el mismo orden en que se nombran los campos, si ingresamos los datos en otro orden, no aparece un mensaje de error y los datos se guardan de modo incorrecto.
Note que los datos ingresados, como corresponden a campos de cadenas de caracteres se colocan entre comillas simples. Las comillas simples son OBLIGATORIAS.

Volver al inicio

14 - Anclas llamadas desde otra página.

También es perfectamente válido la llamada a anclas desde otra página (no importa si se encuentra en el mismo sitio o en otro)
Debemos conocer el nombre de la página a llamar y el nombre del ancla, luego la sintaxis para la llamada al ancla es:
<a href="pagina2.html#introduccion">Introducción</a>

Es decir luego del nombre de la página que llamamos disponemos el caracter # y seguidamente el nombre del ancla.

15 - Lista ordenada (<ol>)

Este elemento HTML es útil cuando debemos numerar una serie de objetos.
La marca <ol> y su correspondiente marca de cerrado es </ol>

En su interior cada uno de los items se los dispone con el elemento li, que también tiene la marca de comienzo <li> y la marca de fin de item </li>

Luego se encarga el navegador de numerar cada uno de los items contenidos en la lista, tengamos en cuenta que se numeran porque se trata de una lista ordenada.
Para recordar el nombre de estos elementos HTML:

<ol> viene de ordened list
<li> viene de list item

<html>
<head></head>
<body>
<ol>
		<li>Rodriguez Pablo</li>
		<li>Gonzalez Raul</li>
		<li>Lopez Hector</li>
</ol>
</body>
</html>
  1. Rodriguez Pablo
  2. Gonzalez Raul
  3. Lopez Hector

Volver al inicio

16 - Lista no ordenada (<ul>)

Una lista no ordenada como su nombre lo indica no utiliza un número delante de cada items sino un pequeño símbolo gráfico.
La forma de implementar este tipo de listas es idéntico a las listas ordenadas.

<ul> viene de unordered list
<li> viene de list item

<html>
<head>
</head>
<body>
<h2>Lenguajes de programación.</h2>
<ul>
		<li>C</li>
		<li>C++</li>
		<li>Java</li>
		<li>C#</li>
</ul>
</body>
</html>

Lenguajes de programación.

Volver al inicio

17 - Lista de definiciones (<dl>)

Como su nombre lo indica se utiliza para asociar un término y la definición del mismo. El navegador se encarga de destacar y separa el término y su definición.
Como podemos observar intervienen más marcas que en los otros dos tipos de listas.

Las marcas que encierran a la lista son <dl> (Definition List) y </dl>
Ahora debemos poner a pares estos dos elementos <dt> (Definition Term) y <dd> (Definition Description)
El navegador se encarga de hacer el sangrado del contenido del elemento dt
Para recordar los nombres de estas marcas HTML:

<dl> viene de definition list
<dt> viene de definition term
<dd> viene de definition description

<html>
<head></head>
<body>
	<dl>
	<dt>C++</dt>
	<dd>Es un lenguaje de programación, diseñado a mediados de los años 1980, por Bjarne Stroustrup, como extensión del lenguaje 
		de programación C.</dd>
	<dt>Java</dt>
	<dd>Es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los 90.</dd>
	<dt>JavaScript</dt>
	<dd>Es un lenguaje interpretado, es decir, que no requiere compilación, utilizado principalmente en páginas web, con una sintaxis 
		semejante a la del lenguaje C.</dd>
	</dl>
</body>
</html>
C++
Es un lenguaje de programación, diseñado a mediados de los años 1980, por Bjarne Stroustrup, como extensión del lenguaje de programación C.
Java
Es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los 90.
JavaScript
Es un lenguaje interpretado, es decir, que no requiere compilación, utilizado principalmente en páginas web, con una sintaxis semejante a la del lenguaje C.

Volver al inicio

18 - Listas anidadas.

El lenguaje HTML nos permite insertar una lista dentro de otra. Se pueden anidar listas de distinto tipo, por ejemplo podemos tener una lista no ordenada y uno de los item puede ser una lista ordenada. Para el anidamiento de listas solo debemos tener cuidado en la correcta apertura y cerrado de las marcas
Se puede insertar en un elemento li una lista como podemos ver:

<html>
<head></head>
<body>
<ol>
	<li>Argentina
		<ul>
		<li><a href="http://www.lanacion.com.ar">La Nación</a></li>
		<li><a href="http://www.clarin.com.ar">Clarín</a></li>
		<li><a href="http://www.pagina12.com.ar">Página 12</a></li>
		</ul>
	</li>
	<li>España
		<ul>
		<li><a href="http://www.elpais.es">El País Digital</a></li>
		<li><a href="http://www.abc.es">ABC</a></li>
		<li><a href="http://www.elmundo.es">El Mundo</a></li>
		</ul>
	</li>
	<li>México
		<ul>
		<li><a href="http://www.jornada.unam.mx">La Jornada</a></li>
		<li><a href="http://www.el-universal.com.mx">El Universal</a></li>
		</ul>
	</li>
</ol>
</body>
</html>
  1. Argentina
  2. España
  3. México

Volver al inicio

19 - Tabla (<table><tr><td>)

El objetivo fundamental de las tablas es mostrar una serie de datos en forma ordenada, organizado en filas y columnas. Algo importante es que no utilizaremos las tablas para organizar la página completa (esto se hace en la actualizad mediante CSS, es decir hojas de estilo. Una vez que avance en este curso puede visitar CSS) Para la creación de una tabla intervienen una serie de elementos:

<table> Es la marca de comienzo de la tabla. Este elemento requiere la marca de cierre.
<tr> Es la marca de comienzo de una fila. Esta marca debe estar dentro del elemento table. Este elemento requiere la marca de cierre.
<td> Es la marca de comienzo de una celda. Esta marca debe estar dentro del elemento tr. Este elemento requiere la marca de cierre.

Para recordar el nombre de estos elementos HTML:

<table>
<tr> viene de table row que significa fila de la tabla.
<td> viene de table data que significa dato de la tabla.

<html>
<head></head>
<body>
<table border="1">
	<tr>
		<td>China</td><td>1300 millones</td>
	</tr>
	<tr>
		<td>India</td><td>1080 millones</td>
	</tr>
	<tr>
		<td>Estados Unidos</td><td>295 millones</td>
	</tr>
</table>
</body>
</html>
China 1300 millones
India 1080 millones
Estados Unidos 295 millones

Volver al inicio

20 - Tabla con encabezado (<th>)

La primer característica que le vamos a agregar a una tabla son las celdas de encabezado. Normalmente la primer fila de una tabla puede representar los títulos para cada columna. Para indicar que se trata de una celda de encabezado utilizamos el elemento <th>en lugar de <td>

El navegador representa distinto las celdas de datos y las celdas de encabezamiento.
Si observamos el código de la página para indicar que se trata de una celda de tipo encabezado utilizamos el elemento th:

El elemento th debe estar contenido entre las marcas <tr> y </tr>, es decir pertenecen a una fila.
Para recordar el nombre de este nuevo elemento HTML:

<th> viene de table header cell que significa celda de encabezado de tabla.

<html>
<head></head>
<body>
<table border="1">
	<tr>
		<th>Paises</th><th>Cantidad de habitantes</th>
	</tr>
	<tr>
		<td>China</td><td>1300 millones</td>
	</tr>
	<tr>
		<td>India</td><td>1080 millones</td>
	</tr>
	<tr>
		<td>Estados Unidos</td><td>295 millones</td>
	</tr>
</table>
</body>
</html>
Paises Cantidad de habitantes
China 1300 millones
India 1080 millones
Estados Unidos 295 millones

Volver al inicio

21 - Tabla con título (<caption>)

Para disponer un título a una tabla debemos incorporar el elemento caption inmediatamente después que abrimos la marca table. El elemento caption requiere la marca de apertura y cierre. Como podemos observar la marca caption está inmediatamente después que se abre la marca de comienzo de la tabla:
Para recordar el nombre de este nuevo elemento HTML:

<caption> significa título.

<html>
<head></head>
<body>
<table border="1">
	<caption>Población de los paises con mayor cantidad de habitantes.</caption>
	<tr>
		<th>Paises</th><th>Cantidad de habitantes</th>
	</tr>
	<tr>
		<td>China</td><td>1300 millones</td>
	</tr>
	<tr>
		<td>India</td><td>1080 millones</td>
	</tr>
	<tr>
		<td>Estados Unidos</td><td>295 millones</td>
	</tr>
</table>
</body>
</html>
Población de los paises con mayor cantidad de habitantes.
Paises Cantidad de habitantes
China 1300 millones
India 1080 millones
Estados Unidos 295 millones

Volver al inicio

22 - Tabla y combinación de celdas.

En algunas situaciones se necesita que una celda ocupe el lugar de dos o más celdas en forma horizonzal o vertical, para estos casos el elemento td o th dispone de dos propiedades llamadas rowspan y colspan.

A estas propiedades se les asigna un valor entero a partir de 2. Si queremos que una celda ocupe tres columnas luego inicializamos la propiedad rowspan con el valor 3:

<td colspan="3">Facturación de los últimos tres meses</td>

Si por el contrario queremos que una celda se extienda a nivel de filas luego hacemos:

<td rowspan="3">Secciones</td>

Veamos como definimos la primer fila de la tabla:
<tr>
<th rowspan="4">Recursos</th><th colspan="4">Facturación de los últimos tres meses</th>
</tr>

Como podemos observar la primer celda la expandimos hacia abajo 4 casilla y la segunda celda la expandimos hacia la derecha en 4 celdas.
Cuando tenemos que disponer las celdas de la segunda fila debemos tener en cuenta que la primera está ocupada. Luego el código es:

<html>
<head></head>
<body>
<table border="1">
	<tr>
	<th rowspan="4">Recursos</th><th colspan="4">Facturación de los últimos tres meses</th>
	</tr>
	<tr>
	<td>Discos Duros</td><td>23000</td><td>27200</td><td>26000</td>
	</tr>
	<tr>
	<td>CPU</td><td>73000</td><td>67300</td><td>51000</td>
	</tr>
	<tr>
	<td>Monitores</td><td>53000</td><td>72000</td><td>88000</td>
	</tr>
</table>
</body>
</html>
Recursos Facturación de los últimos tres meses
Discos Duros 23000 27200 26000
CPU 73000 67300 51000
Monitores 53000 72000 88000

Volver al inicio

23 - Contenido de la cabecera de la página (<title>)

Hasta ahora habíamos dispuesto la cabecera vacía, ya que casi toda la información que disponemos en ella no se visualiza en el navegador. La única excepcion corresponde al elemento title. El elemento title nos permite definir el título que aparecerá en la barra del navegador (es decir en la parte más alta de la ventana) Siempre debemos buscar un título lo más significativo en cuanto a lo que muestra la página.

<html>
<head><title>Título de la primer página</title></head>
<body>
<h1>Prueba del elemento title</h1>
</body>
</html>

Volver al inicio

24 - Contenido de la cabecera de la página (<meta>)

Un elemento que no se visualiza es el meta, que tiene por objetivo especificar información sobre el propio documento. Veamos las dos propiedades fundamentales de la marca meta y los valores más comunes con lo que podemos inicializarlos:

<meta name="nombre de la propiedad" content="valor de la propiedad">

Name almacena el nombre de la propiedad y content el valor de la propiedad. No existe ninguna especificación de la W3C que defina los valores posibles para el atributo name, si bien existen algunos que son estandares de facto (description, keywords, author etc.) Veamos las propiedades y valores más comunes

<meta name="keywords" content="html, programación, webmaster">

Los buscadores tienen en cuenta los metadatos.Si en la página inicializamos la propiedad name del elemento meta con el valor keywords luego buscará en la propiedad content las distintas palabras claves más representativas para dicha página. Esto es muy útil para posicionar nuestra página según el contenido que provee. Veamos otras inicializaciones del elemento meta:

<meta name="description" content="El objetivo de este tutorial es presentar los conceptos básicos de HTML. Es objetivo prioritario respetar los estándares del W3C">

En este caso especificamos una descripción de la página, pudiendo ser del sitio si se trata de la página principal.
<meta name="author" content="Diego Rodriguez">
<meta name="copyright" content="Interpolacion inc.">

<html>
<head>
<title></title>
	<meta name="keywords" content="html, programación, webmaster, tutorial">
	<meta name="description" content="El objetivo de este tutorial es presentar los conceptos básicos de HTML. Es objetivo
 	prioritario respetar los estándares del W3C">
	<meta name="author" content="Diego Rodriguez">
	<meta name="copyright" content="Interpolacion inc.">
</head>
<body>
</body>
</html>
Volver al inicio

25 - Comentarios dentro de una página <!-- -->

Un comentario es un texto que solo le interesa a la persona que desarrolló la página, el navegador ignora todo el contenido que se encuentra dentro de esta marca. Los comentarios son muy útiles para el desarrollador de la página. Uno deja anotaciones para facilitar el mantenimiento del sitio. Además hay que tener en cuenta que puede ser otra persona la que desarrolle en otro momento el mantenimiento de las páginas que desarrollamos nosotros. Lo que para uno puede ser muy obvio a otro desarrollador puede no ser tan obvio. Otro uso muy habitual cuando estamos desarrollando la página si queremos deshabilitar una parte del código podemos encerrarla entre los caracteres de comentarios.

La sintaxis para definir un comentario es:<!-- Aquí va el comentario -->

Es obligatorio luego del caracter de menor < disponer el signo de admiración y los dos guiones seguidos. Cerramos el comentario con dos guiones y el signo de mayor >

Un comentario puede abarcar varias líneas:
<!-- comentarios - comentarios - comentarios
comentarios - comentarios - comentarios
comentarios - comentarios - comentarios
-->

De todos modos hay que tener en cuenta que cuando un navegador pide la página a un sitio el servidor envía el archivo HTML completo, es decir con los comentarios. Los comentarios consumen ancho de banda del servidor.

Volver al inicio

26 - Sintaxis para caracteres especiales.

Posiblemente hasta ahora no se a preguntado como disponer dentro de una página los caracteres: < y >. Veremos que no los podemos disponer directamente ya que el navegador los confudiría con los caracteres que se utilizan para las marcas HTML. La solución es utilizar otra sintaxis para dichos caracteres, veamos los más utilizados:

&lt;
> &gt;
& &amp;
" &quot;
  &nbsp; //Espacio en blanco.
© &copy;
&euro;

Es decir la sintaxis es disponer un ampersand seguido de un nombre significativo (por lo menos para los que entienden ingles) y finalmente un punto y coma.

Volver al inicio

27.- Frames

Con los frames se pueden mostrar más de un archivo HTML en la misma ventana del navegador. Podemos hacer que los frames interactuen, por ejemplo al presionar un enlace en un frame podemos cargar una página en otro frame. Solo se aconseja emplear frames cuando la situación lo amerita, hay que tener en cuenta que el uso de frame hace menos accesible el sitio y es mucho más dificil imprimir su contenido. Veamos un ejemplo de implementar dos frames:

<html>
	    <head> <title>prueba de frames</title> </head>
	    <frameset cols="20%,80%">
	    <frame src="pagina2.html">
	    <frame src="pagina3.html">
	    <noframes>
	    <p>El navegador no soporta frames</p>
	    </noframes>
	    </frameset>
</html>      

Esta página es la que define la ubicación de los frames dentro del navegador.

La cabecera tiene una sintaxis similar a todas las páginas que hemos visto, pero no existe el body, en su lugar encontramos el elemento frameset.

En este ejemplo dividimos la ventana del navegador en dos secciones que mostrarán una página HTML cada una, mediante la propiedad cols indicamos cuanto ocupará cada ventana en porcentaje: <frameset cols="20%,80%">

En el interior del elemento frameset definimos las dos páginas HTML que deben mostrarse mediante el elemento frame.

El elemento frame tiene una propiedad llamada src (source que significa fuente) que la inicializamos con el nombre de la página a mostrar. Así definimos las dos páginas:
<frame src="pagina2.html">
<frame src="pagina3.html">

Otra elemento importante es el noframes donde indicamos un mensaje en el caso que el navegador no cuente con la capacidad de mostrar frames (podemos disponer enlaces a las páginas en forma individual)
<noframes> <p>El navegador no soporta frames</p> </noframes>

Finalmente cerramos el elemento frame y la página: </frameset> </html>

Volver al inicio

28.- Frames - Actualización de un frame a partir del enlace de otro frame

Una actividad habitual con frames es disponer hipervínculos en uno de los frame y actualizar el contenido de otro frame.

Veamos con un ejemplo la sintaxis para actualizar un frame a partir del enlace de otro: pagina1.html

<html>
<head><title>prueba de frames</title></head>
	<frameset cols="20%,80%">
		<frame src="pagina2.html">
		<frame src="pagina3.html" name="ventanadinamica">
	<noframes><p>El navegador no soporta frames</p></noframes>
	</frameset>
</html>

Podemos observar que para el frame que queremos acceder posteriormente para modificar su contenido debemos inicializar la propiedad name: <frame src="pagina3.html" name="ventanadinamica"> pagina2.html

<html>
<head><title>prueba de frames</title></head>
<body>
	<h2>Enlaces.</h2>
	<ul><li><a href="pagina3.html" target="ventanadinamica">Enlace 1</a></li>
	<li><a href="pagina4.html" target="ventanadinamica">Enlace 2</a></li>
	</ul>
</body>
</html>

Este archivo es el frame de la izquierda, que contiene los hipervínculos a dos páginas. Para indicar que frame debe mostrar las páginas de estos hipervínculos agregamos la propiedad target inicializándola con el valor del name definido para el frame (en nuestro caso es "ventanadinamica")

Tengamos en cuenta que el frame de la derecha comienza mostrando el archivo pagina3.html y luego según que hipervínculo se seleccione mostrará el archivo: pagina3.html o pagina4.html

Los contenidos de los dos archivos pagina3.html y pagina4.html no tienen nada nuevo

Volver al inicio

29.- Frames - Asignación de medidas en píxeles

En los ejemplos anteriores definimos las medidas de los frames en porcentajes: <frameset cols="20%,80%">

Cuando lo indicamos en porcentajes al redimensionar la ventana del navegador el tamaño de los frame se redimensiona en forma proporcional.

Hay situaciones donde queremos que un frame no se redimensione, por ejemplo que el frame de la izquierda donde ubicaríamos un menú de opciones siempre permanezca inalterable. Esto lo logramos indicando un valor absoluto para dicho frame.

Veamos un ejemplo donde definimos 3 frames dividiendo la ventana en tres columna. Luego queremos que el frame de la izquierda y la derecha tengan medidas inalterables, para esto lo definimos de la siguiente forma:
<frameset cols="200,*,200">

Veamos que significa el asterisco para la segunda columna. Como sabemos una ventana puede redimensionarse y las tarjetas gráficas tienen distintas resoluciones en píxeles (640x480, 800x600, 1024x768 etc.), con esta sintaxis indicamos que la primer columna ocupe siempre 200 píxeles, lo mismo la tercer columna, pero la segunda tendrá un ancho de los píxeles que restan (es decir el ancho de ventana menos 400)

Veamos la solución:
pagina1.html

<html>
<head><title>prueba de frames</title></head>
<frameset cols="200,*,200">
<frame src="pagina2.html">
<frame src="pagina3.html">
<frame src="pagina4.html">
<noframes><p>El navegador no soporta frames</p></noframes>
</frameset>
</html>

Veamos algunas variantes para utilizar el asterísco:

Volver al inicio

30.- Frames - Propiedades del elemento frame

Hasta hora hemos utilizado y definido las propiedades para la marca de inicio del elemento frame:
src
name

Otras propiedades que pasaremos a ver, comprender y probar su funcionamiento son:

noresize Esta propiedad no requiere que se le asigne un valor. Si se encuentra presente el frame no podrá ser redimensionado con el mouse por el visitante del sitio.
Por ejemplo si disponemos un menú de enlaces en un frame ubicado a la izquierda es muy probable que definamos la propiedad noresize ya que poca utilidad tiene agrandar o contraer esta región de pantalla.

frameborder Esta propiedad puede tomar los valores 1 o 0. Por defecto un frame aparece con borde es decir esta propiedad por defecto tiene el valor 1. Si queremos que el borde no aparezca debemos inicializarla con 0.
Hay que tener en cuenta que por más que los bordes no existan si se puede redimensionar el frame con el mouse.

scrolling Los valores posibles de esta propiedad son: "auto","yes","no". Por defecto está inicializada con el valor "auto". El valor auto significa que el navegador decide si se debe mostrar la barra de scroll. La mostrará solo si algún contenido del frame no se ve.
Si definimos el valor "yes" estamos indicando que siempre debe estar visible la barra de navegación y por último si asignamos el valor "no" estaremos indicando que nunca debe aparecer la barra de navegación para dicho frame.

Resolvamos el siguiente problema: Confeccionar una ventana con dos frame verticales. No permitir redimensionarlos y no mostrar el borde de los frames. Hacer que el frame de la derecha siempre muestre la barra de desplazamiento.

pagina1.html

<html>
<head><title>prueba de frames</title></head>
<frameset cols="200,*">
<frame src="pagina2.html" frameborder="0" noresize>
<frame src="pagina3.html" frameborder="0" scrolling="yes" noresize>
<noframes><p>El navegador no soporta frames</p></noframes>
</frameset>
</html>

Volver al inicio

31.- Frames - Anidamiento de frameset

El lenguaje HTML nos permite definir un frameset en la ubicación de un frame, esto se logra anidando frameset.

Vamos a crear una página que contenga dos columnas. La segunda columna la dividimos en dos filas:

 

 

 


 

Para resolver este formato de página tenemos que plantear los frameset de la siguiente manera:
pagina1.html

<html>
<head><title>prueba de frames</title></head>
<frameset cols="200,*">
  <frame src="pagina2.html" noresize>
  <frameset rows="70,*">
    <frame src="pagina3.html" noresize>
    <frame src="pagina4.html" noresize>
  </frameset>
<noframes><p>El navegador no soporta frames</p></noframes>
</frameset>
</html>

Veamos más detenidamente como hemos creado los frameset, primero el framset externo define en la propiedad cols dos valores <frameset cols="200,*"> Con esto sabemos que estamos indicando que tendrá dos columnas, la primera de 200 píxeles y la segunda del resto de píxeles. Luego debemos definir los frames de las dos columnas. Acá esta la diferencia con los otros frames vistos:

<frame src="pagina2.html" noresize> <frameset rows="70,*"> El primer frame lo ocupa el archivo pagina2.html, pero el segundo frame no existe, en su lugar se define otro frameset que inicializa la propiedad rows con los valores 70 y *. Con esto estamos indicando que la segunda columna se divide en dos filas, una de 70 píxeles y la otra del resto de píxeles de la ventana.

Volver al inicio

32.- Iframe

El HTML dispone de un elemento llamado iframe que permite disponer un frame con el flujo de la página, similar a disponer una imagen en la página.

Veamos un ejemplo como disponer este tipo de frame tan particular:
pagina1.html

<html>
<head><title>prueba de iframes</title></head>
<body>
<h1>Esto es una prueba de un iframe</h1>
<iframe src="pagina2.html" width="400" height="200">No tiene disponible el navegador la capacidad de iframe
</iframe>
<h2>Esto ya está fuera del iframe</h2>
</body>
</html>

Como podemos ver cuando necesitamos agregar el iframe dentro de la página disponemos:
<iframe src="pagina2.html" width="400" height="200"> No tiene disponible el navegador la capacidad de iframe </iframe>

Le indicamos el ancho y alto que debe tomar el iframe, la ubicación continúa el flujo de la página.

La página que muestra el iframe no introduce ningún concepto nuevo

Algunas propiedades útiles aplicables a un iframe:

src Archivo a mostrar dentro del iframe.
width Ancho en píxeles.
height Alto en píxeles.
frameborder Podemos asignarle los valores 1 o 0. Si vale 0 el borde no se muestra.
scrolling Los valores posibles de esta propiedad son: "auto","yes","no". Por defecto está inicializada con el valor "auto". El valor auto significa que el navegador decide si se debe mostrar la barra de scroll. La mostrará solo si algún contenido del iframe no se ve.

Si definimos el valor "yes" estamos indicando que siempre debe estar visible la barra de navegación y por último si asignamos el valor "no" estaremos indicando que nunca debe aparecer la barra de navegación para dicho iframe.
name Nombre del iframe si queremos acceder desde otra página. Por ejemplo si queremos actualizar su contenido desde un enlace ubicado en otra página

Volver al inicio

33.- Declaración DOCTYPE.

Hasta ahora no hemos hablado de un concepto de vital importancia que es la utilización de elementos HTML estándares. De todos modos no hemos introducido elementos HTML propietarios o desaprobados (ej. font, center etc.)

La organización que define los estándares para la web es W3C.

Utilizar en lo posible las directivas de este comite de estándares nos traerá como ventanja que nuestras páginas en un futuro sigan viendose correctamente en las nuevas versiones de navegadores.

La versión más actual de HTML es la 4.01.

Ahora introduciremos una nueva sección de nuestra página que es la declaración del tipo de documento (DTD Document Type Declaration), esta sección se ubica en la primera línea del archivo HTML, es decir antes de la marca html.

Según el rigor de HTML 4.01 utilizado podemos declararla como:
Declaración transitoria:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 

Declaración estrícta:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

Veamos la sintaxis para definir la sección del DOCTYPE, la primera diferencia con cualquier otro elemento HTML es que el caracter siguiente del < es el signo de admiración (!), luego debe ir la palabra DOCTYPE indicando que se trata de un archivo HTML. Más adelante debemos indicar la versión de HTML y si se trata de HTML transitorio o estricto:

Si es HTML transitorio disponemos: "-//W3C//DTD HTML 4.01 Transitional//EN"

Si es HTML estrícto: "-//W3C//DTD HTML 4.01//EN"

Es decir que cuando es HTML estricto no disponemos la palabra Transitional

Por último se define la dirección de internet donde se encuentra un archivo que enuncia los elemento y propiedades permitidos en el HTML 4.01, discriminando entre HTML estricto y transitorio.

Porqué utilizar HTML transitional, si lo más correcto sería utilizar HTML estricto?

Puede ser que tengamos muchas páginas desarrolladas en el pasado y nos lleve un tiempo hacerlas compatible con el HTML estricto.

Para ver si una página cumple el estandar específico podemos acceder a un programa validador que se encuentra en validator.w3.org

Volver al inicio

34.- Declaración DOCTYPE. HTML Transitional

Cuando indicamos que una página utiliza HTML Transitional podemos hacer uso de algunos elementos HTML de presentacion (fuentes, alineamiento, colores), además la ubicación y anidamiento de elementos es más elástico.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Mi primer pagina</title>
</head>
<body>
PHP - Java - JavaScript - C - C++
</body>
</html>

Volver al inicio

35.- Declaración DOCTYPE. HTML Estricto

En el DTD Estricto de HTML 4.01 se excluye los elementos y atributos de presentación que el W3C espera que dejen de utilizarse a medida que se extienda por parte de todos los navegadores el soporte de las hojas de estilo.

Los webmaster deben usar el DTD Estricto siempre que sea posible, pero pueden usar el DTD Transicional si es necesario el soporte de elementos y atributos de presentación.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Página de prueba del DTD</title>
</head>
<body>
<p>PHP - Java - JavaScript - C - C++</p>
</body>
</html>

Que modificaciones hemos hecho?

Definimos el DOCTYPE <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Agregamos el meta: <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
Definimos el elemento title: <title>Página de prueba del DTD</title>
Definimos el texto de la página dentro de un párrafo (no puede un texto depender directamente del body):
<p>PHP - Java - JavaScript - C - C++</p>

Todos estos cambios son obligatorios para que valide como HTML 4.01 estricto.

otros ejemplos:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Página de prueba del DTD</title>
</head>
<body>
<h1>Página principal.</h1>
<p><a href="pagina2.html">Noticias</a></p>
</body>
</html>

Definimos el hipervínculo de la página dentro de un párrafo (no puede un hipervínculo depender directamente del body):<p><a href="pagina2.html">Noticias</a></p>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Página de prueba del DTD</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
<p>
Ingrese su nombre: <input type="text" name="nombre" size="20"><br>
Ingrese su clave: <input type="password" name="clave" size="12"><br>
<input type="submit" value="enviar">
<input type="reset" value="borrar">
</p>
</form>
</body>
</html>

Definimos todos el contenido del form dentro de un párrafo. No se puede disponer texto o controles de formulario que dependan directamente del elemento form.:
<p> Ingrese su nombre: <input type="text" name="nombre" size="20"> <br> Ingrese su clave: <input type="password" name="clave" size="12"> <br> <input type="submit" value="enviar"> <input type="reset" value="borrar"> </p>

Volver al inicio

36.- Declaración DOCTYPE. para Frames

Cuando empleamos frames debemos utilizar una declaración distinta para el elemento DOCTYPE.

Luego la sección del DOCTYPE para una página que implementa frames debe ser:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

Es decir se incorpora la palabra Frameset donde disponíamos la palabra Transitional o estaba vacía si validamos HTML estrícto.

Confeccionar una ventana que contenga dos frames verticales. Dispondremos dos hipervínculos en el frame de la izquierda que al ser presionados actualicen el archivo a mostrar por el frame de la derecha.

pagina1.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>prueba de frames</title>
</head>
<frameset cols="20%,80%">
<frame src="pagina2.html">
<frame src="pagina3.html" name="ventanadinamica">
<noframes><p>El navegador no soporta frames</p></noframes>
</frameset>
</html>
pagina2.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>prueba de frames</title>
</head>
<body>
<h2>Enlaces.</h2>
<ul>
<li><a href="pagina3.html" target="ventanadinamica">Enlace 1</a></li>
<li><a href="pagina4.html" target="ventanadinamica">Enlace 2</a></li>
</ul>
</body>
</html>

Es importante notar que hemos definido la página HTML Transitional, esto se debe a que la propiedad target del elemento "a" no está permitida. Es decir si utilizamos frames deberemos trabajar con HTML Transitional.

Volver al inicio

37.- Validación de la página a través de un enlace.

La W3C nos permite disponer un ícono como enlace a su validador de páginas HTML:
<p><a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01 Strict" height="31" width="88"></a></p>

Confeccionemos una página y probemos el enlace al validador:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Mi primer pagina</title>
</head>
<body>
<p>PHP - Java - JavaScript - C - C++</p>
<p>
<a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-html401"
alt="Valid HTML 4.01 Strict" height="31" width="88"></a>
</p>
</body>
</html>
Valid HTML 4.01 Strict

 

Solamente agregamos el párrafo que contiene el hipervínculo al sitio que realiza la validación. Gran cantidad de sitios tienen este ícono o alguno similar para indicar que sus páginas cumplen con el HTML Transitional o estrícto.

Volver al inicio

38.- Elementos y propiedades de HTML que no se deben usar

Nombraremos los elementos y propiedades de HTML que no se deben usar, ya que sus objetivos actualmente se resuelven utilizando CSS (Hojas de estilo), de todos modos se las encontrará en muchas páginas antiguas y otras no tanto:

Elementos

u Muestra un texto subrayado.
s Muestra un texto tachado.
strike Muestra un texto tachado.
center Muestra un texto centrado.
menu Crea una lista
dir Define una lista multicolumna
layer (solo Netscape) Agrupa un bloque de elementos HTML (utilizar div)
blink Resalta un texto
marquee Muestra un texto desplazandose de izquierda a derecha o viceversa. Tiene muchas propiedades para definir fuente, color, velocidad de avance etc.
font Permite definir mediante una serie de propiedades el tipo de fuente, tamaño y color
b Muestra el texto en negrita.
i Muestra el texto en itálica.
big Muestra el texto con fuente grande.
small Muestra el texto con fuente pequeña.
hr Muestra una línea horizontal.
basefont Establece el tamaño base de fuente.
isindex Crea un control de entrada de una línea.

Propiedades

text Fija el color de texto para la página si se aplica al elemento body.
bgcolor Fija el color del fondo de texto si se aplica al elemento body.
background Fija una imagen de fondo a la página. Propiedad del elemento body.
link Fija el color de los enlaces no visitados. Se aplica al body.
alink Fija el color del enlace activo. Se aplica al body.
vlink Fija el color de los enlaces ya visitados. Se aplica al body.
align Se lo utiliza para alinear texto a izquierda, derecha, centro etc.

No daremos ejemplo del empleo de estos elementos y propiedades para evitar cualquier posibilidad de internalizar su funcionamiento y empleo.

Volver al inicio