hola, despues de mucho investigar (creedme, cundo digo mucho es MUCHO) he llegado a varais conclusiones de como crear paginas compatibles con la mayoria de los navegadores actualmente usados.
lo primero, deberia solucionar muchos problemas tan solo poniendo en la hoja css
bueno, suponiendo que entendeis lo que es el box model, les comento como deberia funcionar segun w3c (los que dicen como es el html, css, xhtml, etc CORRECTO). beuno, mejor entrad en esta pagina http://css.maxdesign.com.au/listamatic/about-boxmodel.htm
la primer imagen dice como debe ser el box model (y asi lo implementan firefox, opera y otros) y la segunda imagen dice como implementa IE el box model. resumiendo, el box model correcto debe agregar el padding y el borde FUERA del tamaño que especifiquemos al contenido, ampliando asi el tamaño total. IE agrega el padding y el borde dentro del tamaño del contenido, reduciendo el width y el height utilizable de dentro.
hay maneras de corregir todo esto, solo buscad "box model hack" en google y lo tendreis.
pero tambien hay una manera CORRECTA de hacer que se vea bien, y es haciendo que IE lo interprete como debe ser.
un poquito de historia antes: las versiones 4.x y 5.x de IE implementan MAL el box model, excepto con algun box model hack. versiones anteriores de IE no creo ni que existan ya, asi que me niego a programar para esos navegadores. bueno, ahora, IE6 digamos que tiene dos estados: el que puede interpretar (malamente) bien el html y css (llamado Standards-compliant mode") y el que lo interpreta (mal) como IE4 y 5 (quirks mode).
tiene los dos modos para poder ser compatible tanto con las paginas hechas "mal" como con las bien. para que IE 6 interprete bien el box model y seguramente otros tantos problemas de sus anteriores versiones tiene que activarse el standard compilant mode. y eso como se hace? pues hay que hacer el html correcto! nuevamente, y eso como se hace?
facilisimo! simplemente es hacer el codigo BIEN. aqui os dejo una direccion muy interesante http://www.danielclemente.com/html/ y especialemente este apartado http://www.danielclemente.com/html/consejos.html#cons_html los tutoriales de jorgens tambien son buenos, solo basta seguirlos al pie de la letra.
lo principal para que IE6 entre en standars compilant mode es incluir un DOCTYPE al html. esto es una etiqueta que especifica que tipo de documento es (html 3.0, 4.01, xhtml 1.0, etc)
curso acelerado de DOCTYPE:
el doctype es la primer etiqueta que se debe poner al documento y :!: hay que elegirla cuidadosamente :!: porque segun el doctype es como se comprtara nuestro codigo en el navegador.
aqui hay varios doctype:http://www.elguille.info/HTMLscripts/HTML_DOCTYPE.htm
y aqui mas, en ingles: http://htmlhelp.com/tools/validator/doctype.html
en html 4 y xhtml, que quiere decir "strict", "transitional" y "frameset"?
en orden inverso: el frameset especifica que la pagina contiene frames... no se mucho mas de esta, porque esta cayendo en sesuso y no es acosejable usarla.
el transitional es un doc html normal, que puede tener apoyo css o no. y que puede estar medio mal escrito (etiquetas sin cerrar, etiquetas mal anidadas, o cosas asi) y el navegador corregira nuestros fallos y lo interpretara de la mejor manera posible.
y el strict, no permitira ningun fallo de html. se separa diseño de presentacion. con lo cual se deben usar hojas css para el formato de la pagina, dejan de existir las etiquetas FONT por ejemplo.
en la pagina http://css.maxdesign.com.au/listamatic/about-boxmodel.htm que les pase antes pueden ver cuando se activa el standard y cuando el quirk en la tabla de abajo de todo. los casilleros azules significa que interpreta mal el boxmodeling.
YO, PERSONALEMTE, recomiendo a todos programar en xhtml 1.0 strict. es igual que html 4 (que es lo que todos sabemos, mas o menos jeje) pero hay que empezar a usar css y tener cuidado con los estandares xhtml, por ejemplo TODO va en minusculas. es muy facil encontrar informacion de como escrbir xhtml (que repito, es lo mismo que html, pero BIEN).
resumo: para que una pagina sea lo mas compatible posible con los diferentes navegadores tiene que estar bien escrita y tener un doctype valido.
luego, una vez finalizada vuestra web podeis validarla en el w3c http://validator.w3.org/ para las paginas y http://jigsaw.w3.org/css-validator/ para los css.
para que vuestras paginas se vean bien en IE4 y 5 estoy haciendo un documento php que identificara el navegardor que se este usando y cargara un css diferente para cada navegador. cuando lo tenga se los dejo para que lo useis si les interesa.
bueno, esoes todo, casi puedo hacer un manual :lol: espero que les haya servido de algo todo esto... ya se que seran MUY pocos los que lo lean... tal vez swanita, solidaria, max power, jorgens por supuesto y no se algun otro que entienda bastante de todo esto, pero seguro ya saben de sobra lo que cuento :oops:
lo primero, deberia solucionar muchos problemas tan solo poniendo en la hoja css
* {margin:0; padding: 0} pero segun mi experiencia personal, el mayor problema es lo que se denomina "boxmodel". y es el conjunto de margin, border, pading y tamaño del contenido. aqui hay un ejemplo del box model, es interactivo, moviendo el deslizador de abajo podran variar la perspectiva: http://www.redmelon.net/tstme/box_model/bueno, suponiendo que entendeis lo que es el box model, les comento como deberia funcionar segun w3c (los que dicen como es el html, css, xhtml, etc CORRECTO). beuno, mejor entrad en esta pagina http://css.maxdesign.com.au/listamatic/about-boxmodel.htm
la primer imagen dice como debe ser el box model (y asi lo implementan firefox, opera y otros) y la segunda imagen dice como implementa IE el box model. resumiendo, el box model correcto debe agregar el padding y el borde FUERA del tamaño que especifiquemos al contenido, ampliando asi el tamaño total. IE agrega el padding y el borde dentro del tamaño del contenido, reduciendo el width y el height utilizable de dentro.
hay maneras de corregir todo esto, solo buscad "box model hack" en google y lo tendreis.
pero tambien hay una manera CORRECTA de hacer que se vea bien, y es haciendo que IE lo interprete como debe ser.
un poquito de historia antes: las versiones 4.x y 5.x de IE implementan MAL el box model, excepto con algun box model hack. versiones anteriores de IE no creo ni que existan ya, asi que me niego a programar para esos navegadores. bueno, ahora, IE6 digamos que tiene dos estados: el que puede interpretar (malamente) bien el html y css (llamado Standards-compliant mode") y el que lo interpreta (mal) como IE4 y 5 (quirks mode).
tiene los dos modos para poder ser compatible tanto con las paginas hechas "mal" como con las bien. para que IE 6 interprete bien el box model y seguramente otros tantos problemas de sus anteriores versiones tiene que activarse el standard compilant mode. y eso como se hace? pues hay que hacer el html correcto! nuevamente, y eso como se hace?
facilisimo! simplemente es hacer el codigo BIEN. aqui os dejo una direccion muy interesante http://www.danielclemente.com/html/ y especialemente este apartado http://www.danielclemente.com/html/consejos.html#cons_html los tutoriales de jorgens tambien son buenos, solo basta seguirlos al pie de la letra.
lo principal para que IE6 entre en standars compilant mode es incluir un DOCTYPE al html. esto es una etiqueta que especifica que tipo de documento es (html 3.0, 4.01, xhtml 1.0, etc)
curso acelerado de DOCTYPE:
el doctype es la primer etiqueta que se debe poner al documento y :!: hay que elegirla cuidadosamente :!: porque segun el doctype es como se comprtara nuestro codigo en el navegador.
aqui hay varios doctype:http://www.elguille.info/HTMLscripts/HTML_DOCTYPE.htm
y aqui mas, en ingles: http://htmlhelp.com/tools/validator/doctype.html
en html 4 y xhtml, que quiere decir "strict", "transitional" y "frameset"?
en orden inverso: el frameset especifica que la pagina contiene frames... no se mucho mas de esta, porque esta cayendo en sesuso y no es acosejable usarla.
el transitional es un doc html normal, que puede tener apoyo css o no. y que puede estar medio mal escrito (etiquetas sin cerrar, etiquetas mal anidadas, o cosas asi) y el navegador corregira nuestros fallos y lo interpretara de la mejor manera posible.
y el strict, no permitira ningun fallo de html. se separa diseño de presentacion. con lo cual se deben usar hojas css para el formato de la pagina, dejan de existir las etiquetas FONT por ejemplo.
en la pagina http://css.maxdesign.com.au/listamatic/about-boxmodel.htm que les pase antes pueden ver cuando se activa el standard y cuando el quirk en la tabla de abajo de todo. los casilleros azules significa que interpreta mal el boxmodeling.
YO, PERSONALEMTE, recomiendo a todos programar en xhtml 1.0 strict. es igual que html 4 (que es lo que todos sabemos, mas o menos jeje) pero hay que empezar a usar css y tener cuidado con los estandares xhtml, por ejemplo TODO va en minusculas. es muy facil encontrar informacion de como escrbir xhtml (que repito, es lo mismo que html, pero BIEN).
resumo: para que una pagina sea lo mas compatible posible con los diferentes navegadores tiene que estar bien escrita y tener un doctype valido.
luego, una vez finalizada vuestra web podeis validarla en el w3c http://validator.w3.org/ para las paginas y http://jigsaw.w3.org/css-validator/ para los css.
para que vuestras paginas se vean bien en IE4 y 5 estoy haciendo un documento php que identificara el navegardor que se este usando y cargara un css diferente para cada navegador. cuando lo tenga se los dejo para que lo useis si les interesa.
bueno, esoes todo, casi puedo hacer un manual :lol: espero que les haya servido de algo todo esto... ya se que seran MUY pocos los que lo lean... tal vez swanita, solidaria, max power, jorgens por supuesto y no se algun otro que entienda bastante de todo esto, pero seguro ya saben de sobra lo que cuento :oops: