Etiqueta !DOCTYPE
4 seguidores
Resulta que estoy programando una web que será accesible y cumplirá con todos los estándares, o al menos lo intentará.
Pero nada más empezar ya me encontrado con el primer problema.
Si no me confundo esta etiqueta debe ir al comienzo del html
<code><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"></code>
Pues bien, esta etiqueta provoca que los clipping en las capas no funcionen en de ninguna manera.
¿¿Alguien sabe si es estrictamente necesaria la declaración de DOCTYPE ?? ¿o cómo solucionar este problema?. Ocurre tanto en explorer como en mozilla.
Gracias
CarlosJ
....y además me he dado cuenta... que el la propiedad clip sólo funciona si además hay posicionamiento absoluto. Por lo que no puedo utilizar la propiedad float para organizar y estructurar los contenidos.
¿?¿?¿Esto son bugs, errores de css o me confundo en algo?¿?¿?¿?
orange
Pues si te digo la verdad no sé que hace la propiedad clip, pero casi seguro que el problema viene porque esa propiedad no valida XHTML estricto.
Puedes probar a cambiar la declaracion de documento por una transicional, al menos para ir empezando con ello, cambia el DOCTYPE a esto:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
De todas formas no te creas que yo piloto demasiado en cuanto a detalles sobre esto, suelo ir un poco a tiro hecho.
CarlosJ
uuuummm...algo así debe ser pero es extraño, porque el clipping se encuentra tanto en css1 como en css2, y ha funcionado siempre sin problemas siempre en todo tipo de navegadores
La verdad es que es algo raro, yo me he estado desquiciando bastante... esto corrobora la teoría de que la informática no es una ciencia exacta y mucho menos internet.,.,jejej
Muchas gracias de cualquier manera orange.
meddle
¿Puedes poner un link? Hay mil cosas que pueden estar mal. Evidentemente el Doctype es necesario para que el navegador sepa que tipo de documento va a leer. Si no se lo pones va a tener que usar todo su motor en lugar de usar lo estrictamente necesario. Hay varios tipos de doctype, para html, xhtml etc. Te recomendaria que miraras algun tutorial que los explique al detalle.
En tu caso, prueba a poner el doctype transitional, a ver si eso arregla las cosas, con el strict tienes que saber MUY bien lo que haces o el layout puede fallar, porque dependiendo del doctype los navegadores usan un diferente modelo de caja del CSS.
Lo dicho, pones un link y lo miramos con calma.
adn
Una explicación de los doctypes:
http://www.alistapart.com/stories/doctype/
CarlosJ
Gracias a todos...perdón por tardar en responder pero he tenido mucho jaleo, parece que ya más o menos lo he resuelto.
Pero aún persiste un problema, y es que con esta declaración doctype:<code><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"></code>
No me procesa correctamente el atributo de clip de css.<code>#oMenuDos { position:absolute; left:211px; top:145px; visibility:visible; clip:rect(0,147,0,0); z-index:20; }</code> Y eso es un problema importante, puesto que con él he construído un menú de navegación.
No se si existe alguna otra declaración que solucione esto para las css.
A ver si alguien sabe algo,.,.
meddle
prueba con:
clip:rect(0px 147px 0px 0px)
CarlosJ
Pues sí...de esa manera sí que lo coge, empecé a pensar que era un bug o algo raro, porque de la otra forma funcionaba incluso en ns4.
De cualquier manera es extraño, porque incluyendo las comas es la manera correcta según la W3C, pero bueno...lo importante es que funcione.
Muchas gracias.