2009-12-29 5 views
1

XHTML 1.0에서는 태그의 xml : space 속성을 사용할 수 있지만 XHTML 1.1에서는 (동일한 마크 업을 사용하여) 유효하지 않습니다.XHTML 1.1 및 스크립트 태그의 xml : space 속성

문서에서 찾을 수 없습니다 ... 누구든지 확인할 수 있습니까? 왜 제거 되었습니까? 그것은 다른 것으로 대체 되었습니까?

샘플 검증하는 :

<script type="text/javascript" xml:space="preserve"> 
    // <![CDATA[ 
    alert('foo'); 
    alert('bar'); 
    // ]]> 
</script> 

답변

2

XHTML 1.1 xml:spacehttp://www.w3.org/TR/xhtml-modularization/DTD/xhtml-script-1.mod에 따른 <script> 등 모든 요소 preserve, 고정 된 값을 갖는다 : I는 생각하지 않는다 같은

<!ATTLIST %script.qname; 
    xml:space (preserve)    #FIXED 'preserve' 

요소에 xml:space="preserve"을 선언하는 것은 오류가되어야하며 유효성 검사기가 왜 작동하는지 알 수 없습니다.

그러나 동일한 토큰을 사용하면 속성을 포함하여 얻을 수있는 것이 없습니다. 어떤 웹 브라우저와 일반적인 XML 도구의 '기본 여백 처리 모드'는 어떤 경우에도 공백을 보존 할 것입니다. <script>.

+0

위대한 답변, 정확히 내가 무엇을 찾고 있었는지 (내가 할 수 있으면 투표했을 것입니다)! XHTML 1.0에서 1.1로 페이지를 업그레이드하여이 문제점을 발견했으며이 유효성 검증 오류가 발생했습니다. 이제는 1.1에서 유지하기 위해 고정되어 있으므로 마크 업에서 xml : space를 제거 할 수 있습니다 (어딘가에 보존하는 것보다 다른 경우가 있지만 문제는 아닌 것 같은데요). – AlexV