Элемент CDATA содержит в себе текстовые данные, которые не должны быть проанализированы XML-парсером.
Дополнение: по-умолчанию, парсер воспринимает их как PCDATA.
Такие символы как "<
" и "&
", содержащиеся в тексте, вызовут ошибку XML.
Символ "<
" XML-парсер интерпретирует как начало нового элемента. А символ "&
" – как начало сущности.
Некоторые текстовые данные, например JavaScript, могут содержать множество символов "<
" или "&
". Чтобы избежать ошибок, такие блоки должны быть определены как CDATA.
Всё внутри секции CDATA игнорируется XML-парсером.
Секция CDATA начинается с "<![CDATA[" и заканчивается "]]>".
<script type="text/javascript">
<![CDATA[
function leadZero(number){
if (number < 10 && number > 0){
return "0" + number;
}else{
return number;
}
}
]]>
</script>
Дополнение
Для браузеров, не понимающих признаков CDATA, внутри блоков скриптов и стилей CDATA рекомендуется «скрывать» с помощью комментариев.
<script type="text/javascript">
//<![CDATA[
// Совместимо с XML и XHTML
var strVerReq = " < 1.0.5 ";
//]]>
</script>
<style type="text/css">
/*<![CDATA[*/
.post > p {
font-size: 0.8em;
}
/*]]>*/
</style>
5 Комментариев :
О спасибо...
а CDATA влияет на js скрипт или нет?
Нет, не влияет. Но блоки CDATA рекомендуется «отбивать» комментариями.
Добавил примеры для javascript и CSS.
а вот как обратно?...
столкнулся с проблемой того что в БД не валидный html, который нужно сохранить.
"Засунул" в CDATA, а обратно...?
Анонимный, HTML "забивается" обычными комментариями. ЦДАТА тут не нужна. Либо программными средствами. Но вообще рекомендую перепроверить верстку в хорошем редакторе.
P.S. Ответ запоздал, но вдруг кому поможет :D
Отправить комментарий
Жги!