У меня есть файл темы Diazo, основанный на html5boilerplate . В теме используются условные комментарии к элементу <html>
для идентификации определенных версий Internet Explorer, например,
<!doctype html>
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
<!--[if IE 7]> <html class="no-js ie7 oldie" lang="en"> <![endif]-->
<!--[if IE 8]> <html class="no-js ie8 oldie" lang="en"> <![endif]-->
<!-- Consider adding an manifest.appcache: h5bp.com/d/Offline -->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
Однако, когда тема применяется, Диазо, кажется, удаляет эти условные комментарии и только последние
<!--<![endif]-->
остается в окончательной разметке, производящей что-то вроде
<!doctype html>
<html xmlns="http://www.w3.org/1999/xhtml" class="no-js" lang="en" xml:lang="en"><!--<![endif]-->
с непревзойденным endif
. Использование условных комментариев внутри тега <html>
(например, внутри <head>
или далее в документе), кажется, работает нормально.
Примеры файлов тем и правил, имеющих эту проблему, доступны по адресу
https://github.com/hexagonit/hexagonit.themeskel/blob/master/hexagonit/themeskel/templates/less_theme/+namespace_package+/+package+/theme_resources
Я использую plone.app.theming 1.0b8 со связанными версиями KGS от good-py.