2011-09-29 3 views
5

나는 html5boilerplate을 기반으로하는 디아 조 테마 파일을 가지고 있습니다. 테마는 <html> 요소에 대한 조건부 주석을 사용하여 Internet Explorer의 특정 버전을 식별합니다. 테마 적용 할 때Diazo 테마의 <html> 요소에 조건부 주석을 보존하는 방법은 무엇입니까?

<!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> 또는 그 이하)을 사용하면 문제가없는 것으로 보입니다.

테마의 예는이 문제의 파일이 규칙은 내가 좋은 평에서 관련 KGS 버전과 1.0b8를 plone.app.theming 사용하고

https://github.com/hexagonit/hexagonit.themeskel/blob/master/hexagonit/themeskel/templates/less_theme/+namespace_package+/+package+/theme_resources

에서 사용할 수 있습니다.

답변

2

Diazo의 버그처럼 보입니다. Plone 버그 추적기에 'Diazo'구성 요소를 추가하십시오.

+0

감사합니다. https://dev.plone.org/plone/ticket/12249 –

0

이 문제를 해결하려면 <body> 태그에 조건부 주석을 사용할 수 있지만 Diazo는 Plone의 본문 태그에 몇 가지 클래스를 추가해야합니다 (< = IE8).

<merge attributes="class" css:theme="body" css:content="body" /> 

그래서 3 단계 해결 방법은 이와 같이 div 블록에 대한 의견을 사용할 수 있습니다.

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <link rel="stylesheet" href="css/style.css"> 
    <title>Title</title> 

</head> 
<body> 
    <!--[if lt IE 7]> <div class="no-js ie6 oldie"> <![endif]--> 
    <!--[if IE 7]> <div class="no-jsie7 oldie"> <![endif]--> 
    <!--[if IE 8]> <div class="no-js ie8 oldie"> <![endif]--> 
    <!--[if gt IE 8]><!--> <div class="no-js"> <!--<![endif]--> 

    <div id="content"></div> 

    </div><!-- Browser Detection --> 
</body> 
</html> 

Plone의 생성 된 html의 일반적인 허망함을 감안할 때 나는 이것으로 살 수 있었다.