> menú > recursos > trucos >> Las otras preguntas frecuentes de HTML



Las otras preguntas frecuentes de HTML

Autor: Arnoud "Galactus" Engelfriet <galactus@htmlhelp.com>

  1. ¿Cómo hago para aumentar la sangría (indentar) la primera línea de los párrafos?
  2. ¿Cómo hago para indentar mucho texto?
  3. ¿Puedo poner comandos HTML dentro del texto alternativo de las imágenes?
  4. ¿Cómo hago para incluir un archivo en otro?
  5. ¿Cómo hago para incluir un texto desplazándose en la barra de estado?
  6. ¿Cómo hago para ocultar el código fuente?
  7. ¿Cómo hago para hacer una regla personalizada o una lista con viñetas personalizadas?
  8. ¿Cómo hago para mostrar la fecha y la hora en mi documento?
  9. ¿Para qué tamaño de pantalla debo escribir?
  10. ¿Cómo hago para obtener la dirección de correo electrónico de quienes visitan mi sitio?
  11. ¿Cómo hago un corte de página?
  12. ¿Cómo hago una tabla que se vea bien en AOL y Prodigy?
  13. ¿Cómo hago para centrar una tabla?
  14. ¿Cómo hago para crear GIFs animados?
  15. ¿Hay alguna manera de lograr una mejor indexación por parte de los buscadores y motores de búsqueda?
  16. ¿Cómo hago para redireccionar hacia mi nueva página?
  17. ¿Cómo hago para incluir un botón de "volver" en mi página?
  18. ¿Cómo hago para forzar una descarga?
  19. ¿Por qué no se ha descargado el archivo binario pero se ve en la pantalla?
  20. ¿Cómo hago para usar una imagen en lugar del botón standard de enviar?
  21. ¿Cómo hago para poner tales y cuales caracteres en HTML?
  22. ¿Cómo hago para poner un contador?
  23. ¿Cómo hago para detectar qué navegador se está usando?
  24. Quiero incluir un archivo de audio que se ejecute automáticamente cuanod alguien visita mi sitio web!
  25. ¿Debo poner comillas a los valores de los atributos o no?
  26. ¿Debo usar mayúsculas o minúsculas para los comandos HTML?
  27. Las imágenes/hipervínculos están mal o no se cargan. ¿Qué pasa?
  28. ¿Cómo hago para poner un botón que me lleve a otra página?

¿Cómo hago para aumentar la sangría (indentar) la primera línea de los párrafos?

No es posible hacerlo de manera fiable hasta que estén más ampliamente soportadas las style sheets. De momento, hay varios trucos específicos para los navegadores pero no hay garantía de que funciones.

¿Cómo hago para indentar mucho texto?

Una vez más, no hay una forma cverdaderamente fiable de hacer esto. El Netscape va a indentar el texto dentro de un <BLOCKQUOTE>, pero otros navegadores no lo hacen. Quizá muestren el texto en itálicas o con comillas. Puede parecer muy extraño.
Un alternativa puede ser usar <DL> sin <DT> y <DD>, que es HTML no válido, pero hay varios navegadores que se manejan frente a este error aumentando la sangría del texto que hay adentro. No se garantiza que funcione.

Si deseas utilizar tablas para el diseño, hay otra opción. Crea una tabla de una sola celda, así:

<CENTER>
<TABLE width="80%">
<TR><TD><DIV align=left>
<!-- Aquí va el texto -->
</DIV>
</TD></TR>
</TABLE>
</CENTER>

Una desventaja de esta solución es que si hay un bloque muy largo dentro de una tabla, puede tardar mucho en descargar y puede que no aparezcan hasta que se haya descargado la tabla entera. Otra desventaja es que puede forzar a los usuarios a redimensionar la ventana después de haberse acostumbrado a su configuración predilecta.

¿Puedo poner comandos HTML dentro del texto alternativo de las imágenes?

No. Sin embargo, las entidades de caracteres (&copy;, &#nnn; y tales) están permitidas.

If you want to know how to write good ALT texts without markup, please see Alan Flavell's essay on choosing ALT texts.

¿Cómo hago para incluir un archivo en otro?

Usa server-side includes, si tu servidor lo soporta. Pregúntale a tu Webmaster si lo soporta, y en caso de que sí, cuál es la sintaxis exacta para tu servidor.
Como el server-side includes hace que el documento sea más lento, no siempre es lo más deseable. Si los documentos solo contienen un pie de página estático, que no cambia todos los días, podrías mejor usar un editor que inserte archivos en el documento actual o un preprocesador. El preprocesador de C hace esto, pero hay también hay varios preprocesadores específicos para HTML. Recomendamos Orb 1.3.

¿Cómo hago para incluir un texto desplazándose en la barra de estado?

No es una cuestión de HTML, se hace con Javascript. Fíjate en cualquier página que tenga esta función y copia el script del código fuente.

Este script tiene dos problemas grandes. Uno es que generalmente usa un operador decremental (c--) en algún punto. La secuencia "--" en un comentario en realidad lo cierra en algunos navegadores, por lo tanto tu código puede "hacer agua" en esos navegadores. Lo mismo sucede con ">".

Segundo, ten en mente que mucha gente considera que esto es aun peor que <BLINK>, y qu etambién suprime la información de estado que normalmente aparece allí. Impide que la gente vea adónde lleva un link.

¿Cómo hago para ocultar el código fuente?

No puedes. El código fuente es necesario para que el navegador pueda mostrar el documento. Debes enviar el código fuente completo y desencriptado al navegador. Aun si un navegador en particular no tiene la opción de "Ver código fuente", hay muchos que sí la tienen, y siempre puedes bajar el documento a mano, (por telnet) para acceder al código fuente. O verificar el cache del navegador.
Por supuesto que puedes poner unos cientos de líneas vacías arriba del código fuente, de manera tal qeu los novatos que no vean las barras de desplazamiento piensen que no hay nada allí.

¿Cómo hago para hacer una regla personalizada o una lista con viñetas personalizadas?

Hay una propuesta en el borrador del HTML 3, actualmente expirado, para manejar exactamente esto: solo agrega SRC al comando HTML <HR> o <UL>, indicando dónde se encuentra la imagen. Pero hasta que esto esté más ampliamente soportado, tienes que usar <IMG> para la regla, con gran cantidad de caracteres "--" como texto alternativo ALT para los navegadores de texto, y usar un <DL> con solo comandos HTML <DD> para cada ítem. Asegúrate de usar ALIGN para la imagen, que debe ir al principio del ítem, por supuesto. No es tan bella como una lista "real".
Otra alternativa es usar una tabla de dos columnas, con las viñetas en la columna d ela izquierda y el texto en la de la derecha. Per esto no funciona bien en los navegadores que no soportan tablas.

¿Cómo hago para mostrar la fecha y la hora en mi documento?

Con server-side includes. Pregúntale al tu webmaster si está soportado y cuál es la sintaxis exacta para tu server. Pero esto mostrará la hora local del servidor, no la del cliente. Y si el documento se cachea, la fecha será por supuesto incorrecta después de un tiempo.
Se puede usar JavaScript para mostrar la hora local del cliente, pero como la mayorái de la gente ya tiene uno o más relojes en pantalla, ¿para qué mostrar otro más?

¿Para qué tamaño de pantalla debo escribir?

El HTML no es dependiente del tamaño de la pantalla. El navegador cortará el texto en los márgenes para ajustarlo a la pantalla cuando encuentre el final de la pantalla. La única excepción es cuando usas un texto <PRE>-formateado, que solo se cortará an los cortes de línea que tú le indiques. Por lo tanto asegúrate de que esas líneas no excedan los 70 caracteres, porque si no, los usuarios de modo texto verán cortes desagradables en sus terminales. Y los usuarios de navegadores gráficos quizá tengan que desplazarse horizontalmente para ver el resto, lo cual es una de las cosas más detestables cuando lees un documento.

POr supuesto, no se puede sortar una imagen, así que tendrás que ser cuidadoso con eso. Parece ser que 400 o 500 pixels es un ancho razonable; más de 600 hará que un cierto porcentaje de usuarios tenga que desplazarse para ver el extremo derecho. Este porcentaje se incrementa con el ancho de tu imagen. Ten en mente que no todo el mundo naega a pantalla completa!

¿Cómo hago para obtener la dirección de correo electrónico de quienes visitan mi sitio?

No puedes. Aunque cada solicitud de documento generalmente se loggea con el nombre o la dirección del host remoto, el nombre de usuario real no se loggea casi nunca. Esto se debe principalmente a cuestiones de rendimiento, porque requeriría que el servidor utilizara el protocolo de identificación para ver quién está del otro lado. Esto lleva tiempo. Y si es un proxy de cache el que está haciendo la solicitud, no obtienes ningún dato que tenga sentido.
En el Netscape 2.0, se podía enviar automáticamente un fromulario con un mailto como acción usando Javascript. Esto envía un email al propietario del documento, con la dirección de la persona que lo visitó configurada en la línea De: (From:). Por supuesto puede llegar a ser "mickey.mouse@disney.com". Está fija en el Netscape 2.01.
La manera más fiable es poner un formulario y pedirle a quienes visitan que completen con su dirección de email. Si le ofreces algo a cambio, lo más probable es que lo haga.

¿Cómo hago un corte de página?

No lo hagas. El HTML no es un lenguaje para diseñar páginas. Le corresponde al navegador decidir dónde y cómo insertar los cortes de página al imprimir un documento.

Sin embargo, el style sheets (no soportado masivamente aun, aunque el Internet Explorer de Microsoft está empezando a usarlo) incluirá soporte para indicar los puntos preferidos para cortes de página, probablemente algo así como la manera en que lo maneja el LaTeX.

¿Cómo hago una tabla que se vea bien en AOL y Prodigy?

Probablemente la mejor manera sea incluir una versión en texto preformateado. Puede ser visualizado por cualquier navegador, incluyendo el Lynx.

Si necesariamente debes incluir una tabla, fíjate en el documento de Alan Flavell acerca de tablas y verás una buena discusión del tema.

¿Cómo hago para centrar una tabla?

La manera "correcta" de hacer esto es <TABLE ALIGN=CENTER>, pero no funciona en algunos de los navegadores más usados. Para estos navegadores, pon <CENTER> en toda la tabla.

Esto ocasiona algunos problemas en aquellos navegadores que sí soportan CENTER pero no tablas, como por ejemplo el Lynx. Estos navegadores muestran el contenido de las celdas centrado, que no es la intención. Para evitar esto puedes poner el contenido de las celdas en <P ALIGN=left> o <DIV ALIGN=left> dependiendo de la cantidad de texto que haya en la celda.

¿Cómo hago para crear GIFs animados?

Pregunta en el grupo comp.infosystems.www.authoring.images.

¿Hay alguna manera de lograr una mejor indexación por parte de los buscadores y motores de búsqueda?

Sí. Incluye estas dos sentencias en el <HEAD> de tus documentos:

<META NAME="keywords" CONTENT="keyword keyword keyword keyword">
<META NAME="description" CONTENT="descripción de tu sitio">

Ambas pueden tener hasta 1022 caracteres. Si un keyword es utilizado más de 7 veces el comando keyword entero será ignorado. Asimismo, no puedes poner marcas [markup] (aparte de las entidades) en la descripción o en la lista de keywords. El Infoseek y el Alta Vista están haciendo esto.

¿Cómo hago para redireccionar hacia mi nueva página?

La forma más fiable es configurar el servidor como para que envíe una instrucción de redireccionemiento toda vez que se solicite la URL anterior. De esta manera el navegador obtendrá automáticamente la nueva URL. Esta es la forma más rápida de hacerlo. Por supuesto también puedes sencillamente poner una pequeña página con un texto que diga por ejemplo "Esta página se ha trasladado a http://new.url/, por favor modifique sus favoritos".

Hay una solución que es solo válida para Netscape, que no funciona con otros navegadores, y que ajusta el botón de "volver" en el Netscape, es

<META HTTP-EQUIV="Refresh" CONTENT="x; URL=new.URL">

que carga la nueva URL después de x segundos. Esto debería incluirse en el HEAD del documento. Pero si haces esto, incluye también un texto corto que diga "Documento trasladado a nueva URL, etc." para otros navegadores.

(El ajuste se refiere al hecho que si haces "Volver" después de haber sido redireccionado, te llevará al documento con la actualización automática por comando META. Entonces se activará la actualización y saltarás a la página de donde estabas tratando de salir.)

¿Cómo hago para incluir un botón de "volver" en mi página?

En HTML, esto es imposible."Volver" significa que vas a la página anterior en tu histórico. Podrías crear un link a la URL especificada en la variable de entorno del "HTTP_REFERER" en tu documento, pero eso solamente crea un link a una nueva ubicación en tu historia. Lo que es aún peor es que la información contenida en esa variable puede der definitivamente incorrecta. Algunos navegadores envían de manera incorrecta las variables cuando usas los favoritos o ingresas una URL en forma manual, y hay algunos que directamente no las envían. POr lo tanto terminarías teniendo un link vacío.
Un JavaScript usaría "history.back()" para hacer esto, pero solo funciona en el Netscape 2.

Para un aexplicación más detallada, ve a "Cómo simular el botón de volver", de Abigail.

¿Cómo hago para forzar una descarga?

No puedes. Vayamos a la siguiente pregunta, por favor.

Ok, vamos a explicarlo, de todas formas. :-) Cuando alguien descarga un documento, el servidor le dice al navegador qué tipo de archivo es. Entonces el navegador coge la aplicación auxiliar apropiada o la muestra él mismo. Si el servidor no conoce ese tipo de archivo, le dice al navegador que el archivo es "text/plain", o texto plano. Tendrás que pedirle al administrador de tu servidor que configure este archivo en particular con el tipo de MIME que quieras.

"Forzar" una descarga no es lo que se supone que debas hacer. Después de todo, ¿qué es lo que resulta más conveniente que iniciar la aplicación apropiada cuando descargo un archivo en particular? Navegar por un directorio de descarga puede llegar a aresultar un verdadero tormento. Y la mayoría de los navegadores permiten al usuario descargar al disco si así lo desean.

Si el archivo debe guardarse en el disco, porque no hay NINGUNA otra manera de manejarlo, el tipo MIME debería ser "application/octet-stream".

¿Por qué no se ha descargado el archivo binario pero se ve en la pantalla?

En realidad, el navegador sí ha descargado el documento, solo que lo está manejando como un archivo de texto plano. Esto se debe a que el servidor dijo que es un archivo de texto plano. Para tener el archivo en la aplicación auxiliar (o el plug-in), tendrás que configurar el servidor para enviar el tipo de MIME correcto, y el navegador como para iniciar la aplicación auxiliar apropiada para los archivos de ese tipo MIME.

¿Cómo hago para usar una imagen en lugar del botón standard de enviar?

Usa <INPUT NAME=foo TYPE=image SRC="http://url.to/image.gif"> en lugar del comando de HTML normal de enviar. No hay manera de hacer esto mismo con el botón de borrar.

Fíjate que los navegadores también enviarán las coordenadas x e y del lugar donde el usuario pincha en la imagen al servidor. Se acceden como "foo.x=000&foo.y=000" en el CGI input.

¿Cómo hago para poner tales y cuales caracteres en HTML?

Se supone que el texto HTML debe escribirse en el conjunto de caracteres ISO Latin-1. Hay una revisión completa de todos los caracteres de este conjunto en:

¿Cómo hago para poner un contador?

O bien pídele a tu Webmaster que te dé acceso a los archivos de bitácora, o a un server-side include que pueda hacer esto, o bien utiliza uno de los contadores freeware (gratuitos) que hay en los archivos CGI. NO hay ningún comando HTML para hacer esto.
De todas formas, los contadores no tienen demasiado sentido. Pueden configurarse en cualquier valor que se quiera, por lo tanto no proporcionan ninguna información útil. Debido al retraso que se genera a menudo al utilizar contadores externos, las personas que visitan tu sitio puedn fastidiarse por el tiempo que tarda el documento en decargarse. El archivo de bitácora del servidor provee información mucho más fiable, y no tienes necesidad de molestar a los lectores.

¿Cómo hago para detectar qué navegador se está usando?

Muchos navegadores se identifican al momento de solicitar un documento. Un CGI script tiene esta información disponible en la variable de entorno HTTP_USER_AGENT, y puede usar esto mismo para enviar una versión del documento optimizada para ese navegador.
Ten en mente que no todos los navegadores se identifican de manera correcta. Microsoft Internet Explorer, por ejemplo, se identifica como "Mozilla 1.2" para acceder a documentos optimizados para Netscape.
Y por supuesto, si un proxy de cache guarda el documento optimizado para Netscape, alguien que tenga otro navegador también accederá a este documento si recorre el cache.

Quiero incluir un archivo de audio que se ejecute automáticamente cuando alguien visita mi sitio web!

Qué pasa si visitas tu sitio a las 3 de la mañana y hay alguien durmiendo en el cuarto contiguo?

Para Netscape, esto se hace con el comando de HTML <EMBED>. Para el Netscape también puedes usar el comando de HTML <META> actualizar, de la manera anteriormente descripta. Solamente debes poner el archivo de audio en el campo CONTENT.

Hay también un comando de HTML específico para el MS Internet Explorer: <BGSOUND SRC=URL> que ejecuta automáticamente el archivo especificado en el atributo SRC. Puedes agregar LOOP seguido de un valor o del keyword "INFINITE" para indicar cuántas veces debe ejecutarse el sonido.

¿Debo poner comillas a los valores de los atributos o no?

Depende. Nunca es incorrecto utilizarlas, pero no tienes que hacerlo si el valor del atributo solo consiste en letras, dígitos, períodos y/o guiones. Esto está explicado en en las especificaciones del HTML 2.0.
Y ten en cuenta que si usas comillas dobles, debes escapar las comillas dentro del valor con "&quot;" así no hay riesgo de que termines el valor prematuramente.

¿Debo usar mayúsculas o minúsculas para los comandos HTML?

No importa, porque los comandos HTML no diferencian mayúsculas y minúsculas. Es solo una cuestión de estilo. Hay mucha gente que prefiere las mayúsculas porque hace que los comandos HTML "sobresalgan" y se destaquen mejor del texto.

Las imágenes/hipervínculos están mal o no se cargan. ¿Qué pasa?

Lo más probable es que hayas olvidado cerrar una comilla al final de un HREF o SRC. Otra posibilidad es que quizá hayas utilizado un carácter ">" en un texto alternativo ALT o en alguna parte dentro del comando HTML. Aunque sea legal, hay algunos navegadores viejos que interpretarán que el comando HTML termina allí, por eso muestran el resto como texto normal.

Esto sucede generalmente si usas los comandos de comentario para "comentar" texto con comandos de HTML. Aunque la sintaxis correcta es <!-- --> (sin "--" en ninguna parte dentro del comentario), algunos vnavegadores interpretarán que en el primer > que vean.

¿Cómo hago para poner un botón que me lleve a otra página?

Esto se hace con un pequeño formulario:

<FORM ACTION="http://url.a.donde.quieres.ir/" METHOD=GET>
<INPUT TYPE=submit VALUE="Texto del botón" NAME=foo>
</FORM>
  

Si deseas alinear varios botones, tendrás que ponerlos en una tabla de una fila, con cada botón en una celda separada.





Muchas gracias a Warren Steel, David Henderson y William Johnston por sus comentarios.

 

bb . N E T    Tel: (+34) 607.66.05.47 Madrid, España.
cbuson@buson.net © 1999, 2002