cuando usas xhtml, lo correcto sería pasarlos como application/xhtml+xml, aunque generalmente se hace como text/html.
Si el caso fuese el primero, ciertos selectores de css pueden producir errores en la lectura del xml ( por ejemplo E > F, puede interpretarse el > como un cierre de etiqueta, las expresiones dinámicas que usas IE,
width:expression(document.body.clientWidth > 800? "800px": "auto" );), usando CDATA, se previenen esos errores porque el parser de xml no los analiza.
Es algo similar a lo que se hacía para que los navegadores viejos que no entendían el css, no provocasen fallos, para eso encerrabas el css en comentarios html
<style type="text/css">
<!--
/* código CSS */
html, body {
padding: 0;
margin: 0;
}
-->
</style>
Volviendo al CDATA, obviamente si servimos el archivo como text/html, se hace innecesario.
Pero en la práctica el caso es que en mi editor de texto tengo creadas plantillas para xhtml, y las mismas incluyen los bloques CDATA, tanto para el CSS, como prara javascript, asi que no me cuesta nada ponerlas.
Para CSS es
Código CSS:
Ver original<style type="text/css">
/*<![CDATA[*/
/* codigo css */
html, body {
padding: 0;
margin: 0;
}
/*]]>*/
</style>
para javascript es
Código Javascript
:
Ver original<script type="text/javascript">
//<![CDATA[
/* código jscript */
alert('hola');
//]]>
</script>
Notá la diferencia en la sintáxis, ya que uno usa el estilo de comentarios de css /* */
Y el otro el de comentarios de javascript //
Demás no están, y como te dije , no me cuesta nada ponerlas cuando creo un archivo de ejemplo
Saludos