문제

당신은 어떻게 programmacially 생략 XHTML 을 임의의 번호를 말씀을 떠나지 않고 닫히지 않은 손상 또는 태그는?

<p>
    Proin tristique dapibus neque. Nam eget purus sit amet leo
    tincidunt accumsan.
</p>
<p>
    Proin semper, orci at mattis blandit, augue justo blandit nulla.
    <span>Quisque ante congue justo</span>, ultrices aliquet, mattis eget,
    hendrerit, <em>justo</em>.
</p>

축약하여 25 개의 단어이 될 것이다:

<p>
    Proin tristique dapibus neque. Nam eget purus sit amet leo
    tincidunt accumsan.
</p>
<p>
    Proin semper, orci at mattis blandit, augue justo blandit nulla.
    <span>Quisque ante congue...</span>
</p>
도움이 되었습니까?

해결책

Recurse DOM 을 통해 트리를 유지하는 단어 개수 변수 최신 상태입니다.때 단어 개수 초과 당신의 최고의 단어 수,삽입하는"..."고 제거하는 모든 다음과 같은 형제자매의 현재 노드 그런 다음으로 다시 이동을 통해 재귀,제거 다음과 같은 모든 형제 자매의 각각의 조상입니다.

다른 팁

당신의 생각을 해야 합 XHTML 의 계층으로 요소와 같은 치료.이것은 기본적으로 방법 XML 의미입 취급 할 필요가 있습니다.그가 그냥을 통해 계층을 재귀적으로 추가하는 단어의 수를 함께로 이동합니다.을 때 당신이 당신의 제한을 던져 다른 모든다.

나는 작업에 주로 PHP,그리고 내가 사용하는 것 DOMDocument 클래스에서 PHP 하는 데 도움이 나를 이렇게 당신이 뭔가를 찾을 필요가있는에서 선택한 언어입니다.

을 만들 것을 명확하게,여기에는 이 계층에 대한 예제:

- p
    - Proin tristique dapibus neque. Nam eget purus sit amet leo
      tincidunt accumsan.
- p
    - Proin semper, orci at mattis blandit, augue justo blandit nulla.
    - span
          - Quisque ante congue justo
    - , ultrices aliquet, mattis eget, hendrerit, 
    - em
          - justo
    - .

당신의 25 단어로 제한 내부에 걸쳐 요소,그래서 당신은 제거의 나머지 모든 텍스트 범위 내에서 추가임.다른 모든 아이소(텍스트 및 태그)삭제 될 수 있습니다,그리고 이후의 모든 요소를 삭제할 수 있습니다.

이 항상 당신을 떠날로 유효한 마크업으로까지 나가 볼 수 있기 때문에,당신은 그것을 치료 계층으로하지만,일반 텍스트는 모든 폐 태그는 데 필요한은 여전히 있을 것입니다.

의 경우 물론 XHTML 를 다루고 있는 것은 잘못되었을 시작으로,기대하지 않을 출력하는 유효합니다.

죄송 가난한 계층 구조를 들어,작동할 수 없는 방법을 둥지 목록입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top